Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
**Статус:** Production-ready | **Тип:** Backend + Bot + Web Panel | **Команда:** Solo

Повнофункціональний веб-додаток для інтеграції Telegram-бота з системою управління замовленнями KeyCRM. Клієнти можуть перевіряти баланс, переглядати замовлення та отримувати сповіщення прямо в Telegram.

## Основний функціонал

**Telegram Bot (Aiogram 3.22)**
- Автоматична авторизація за номером телефону
- Перевірка балансу у реальному часі
- Історія замовлень з пагінацією
- Розумні сповіщення про зміни статусу
- Інтерактивні меню через кнопки Telegram

**Веб-інтерфейс**
- Django Admin Panel для управління користувачами
- Аналітика активності користувачів
- Конфігурація розрахунку балансу
- Моніторинг синхронізації з KeyCRM

**Автоматизація (Celery + Redis)**
- Періодична синхронізація даних (кожні 5 хвилин)
- Фонова обробка сповіщень
- Планувальник Celery Beat для управління розписанням

**Безпека**
- Двохетапна автентифікація
- HTTPS/SSL для всіх запитів
- Webhook токени для захисту API
- Environment-based конфігурація

## Технологічний стек

**Backend:** Django 5.1.14 | Python 3.13 | PostgreSQL 16 | Redis 7

**Bot & Async:** Aiogram 3.22 | asyncio/uvloop | httpx/aiohttp

**Task Queue:** Celery 5.5.3 | Celery Beat 2.8.1

**DevOps:** Docker | Docker Compose | Nginx | Gunicorn/Uvicorn

**Quality:** Black | Flake8 | mypy | pytest (104 залежності)

## Архітектура

```
bot/ → Обробники подій Telegram
keycrm/ → Інтеграція REST API KeyCRM
webhook/ → Обробка вхідних подій
config/ → Конфіг Django (local/production)
docker-compose → Оркестрація (web, bot, celery, db, redis, nginx)
```

## Ключові можливості

1. **Real-time синхронізація** — REST API + Webhooks + Redis кешування
2. **Масштабованість** — async/await + Celery workers + мікросервісна архітектура
3. **Надійність** — Health checks + структуроване логування + error tracking
4. **Production-ready** — Docker/Compose + Nginx + SSL + міграції + статичні файли

## Розгортання

**Локально:**
```bash
source venv/bin/activate && pip install -r requirements.txt
python manage.py migrate && ./run_local.sh
```

**Production (Docker):**
```bash
docker-compose up -d && docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py collectstatic
```

**Сервіси:** db (PostgreSQL 16), redis (Redis 7), web (Gunicorn), bot (Aiogram), celery, celery-beat, nginx

## Метрики

| Показник | Значення |
|----------|----------|
| Строк коду | ~3000+ |
| Django додатків | 3 (bot, keycrm, webhook) |
| API endpoints | 15+ |
| Тести/Покриття | 20+ тестів / 65%+ |
| Користувачів | 100+ активних |
| Синхронізація | 50+ замовлень щодня |
| API response | < 200ms |
| Uptime | 99.9%+ |

## Реалізовані паттерни

MVC архітектура | Factory Pattern | Observer Pattern | Singleton | Repository Pattern | Middleware для логування

## Навички продемонстровані

**Backend:** Django 5, PostgreSQL, REST API, async/await, Celery, розподілені системи

**Bot:** Telegram Bot API, інтерактивні UI, state management

**DevOps:** Docker, Docker Compose, Nginx, SSL/TLS, health checks, production deployment

**Engineering:** Архітектурний дизайн, Clean Code, Unit/Integration тести, Git workflows

## Вимоги

- Docker & Docker Compose
- Python 3.13+ (локальна розробка)
- 2GB RAM, 5GB диска

**Змінні:** TELEGRAM_TOKEN, KEYCRM_API_KEY, DB_PASSWORD, DJANGO_SECRET_KEY, DEBUG=False

## Результати

✓ Production-ready додаток ✓ 100+ активних користувачів ✓ Автоматична синхронізація ✓ < 200ms API response ✓ 99.9%+ uptime ✓ Горизонтальне масштабування
Деталі роботи
Бюджет 23 000 UAH
Додано 11 січня
169 переглядів
Фрилансер
Виталий Мациборка
Україна Мукачево  15  0

Вільний для роботи Вільний для роботи
15 Сейфів завершено
На сервісі 8 років