
Телеграм бот для создания партнерских сертификатов стоматологии usmile
⭐️ Поставьте звездочку - это очень мотивирует)
- Администраторы могут создавать особые ссылки для партнеров
- Пройдя по ссылке, партнер пополняет свой баланс
- Партнер может создавать сертификаты, используя свой баланс
- Администраторы могут проверить статус сертификата по его номеру
- Администраторы могут пометить сертификат как использованный
- Python3
- Aiogram3 - библиотека для создания телеграм-ботов
- Peewee - легковесная ORM
- Docker - контейнеризация
- Docker Compose - удобный запуск нескольких контейнеров
- PostgreSQL - база данных
- Redis - быстрое хранилище типа ключ-значение
Зависимости устанавливаются во время сборки Docker контейнера. Но чтобы в вашем редакторе кода работало автодополнение, рекомендуется также установить зависимости в виртуальную среду:
python3 -m venv .venv
source ./.venv/bin/activate
pip install -r requirements.txt
docker compose --profile dev up --build
--profile dev
- использует параметры docker для разработкиup
- запускает проект--build
- пересобирает контейнеры
При внесении изменений в файлы на диске бот перепускается. Реализовано с помощью volumes и watchdog
Все пакеты, использующиеся проектом (даже во время разработки) должны быть добавлены в requirements.txt
Команды ниже предполагают, чтовы уже установили зависимости
pip install package # package - ваш пакет
pip freeze > requirements.txt # обновляет requirements.txt
Сборка и деплой автоматизированы с помощью github-actions
Команда запуска
docker compose --profile prod up -d
--profile prod
- использует параметры docker для продакшенаup
- запускает проект-d
- фоновый режим и запуск при загрузке системы