Skip to content

gmlrep/link_cutter

Repository files navigation

Link Cutter

Link Cutter — лёгкий и расширяемый сервис для создания коротких ссылок с базовой аналитикой.

Реализован на FastAPI; хранит ссылки в PostgreSQL и использует Redis для кеша и rate‑limiting. Предназначен как MVP или основа для дальнейшего развития (кастомные домены, платные планы, webhooks, QR‑коды).

Futures

  • Создание коротких ссылок (авто‑код Base62 и кастомные коды)
  • Редирект с 301 и кэширование в Redis
  • Сбор базовой аналитики: клики, device/platform/browser (парсинг User‑Agent), referrer, гео (по IP)
  • Поддержка пользователей, API‑ключей
  • Защита: rate limiting, проверка целевых URL (блокировка локальных/опасных адресов)

Stack

  • Python 3.12
  • FastAPI (ASGI)
  • PostgreSQL (SQLAlchemy / Alembic)
  • Pydentic
  • Uvicorn (WSGI server)
  • Redis (кеш, rate limit)
  • Loguru (логирование)
  • Docker / docker-compose

Start with docker

docker compose -f docker-compose.yml up --build -d

About

Link Cutter — лёгкий и расширяемый сервис для создания коротких ссылок с базовой аналитикой

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors