Skip to content

Commit 8a2e750

Browse files
authored
Merge pull request #4 from coder8080/better_readme
Improve README
2 parents c193d29 + b6532d4 commit 8a2e750

File tree

4 files changed

+66
-10
lines changed

4 files changed

+66
-10
lines changed

README.md

Lines changed: 66 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,84 @@
1-
# USMILE Telegram Bot
1+
<a href="https://usmileclinic.ru/">
2+
<img src="./media/site_logo.jpg" alt="Usmile logo" title="Usmile" align="right" height="60" />
3+
</a>
4+
5+
# 🦷 USMILE Telegram Bot
6+
7+
<p align="center">
8+
<a href="https://t.me/usmile_cert_bot">
9+
<img alt="telegram-bot" src="./media/bot_logo_small.png">
10+
</a>
11+
</p>
212

313
Телеграм бот для создания партнерских сертификатов стоматологии usmile
414

15+
⭐️ Поставьте звездочку - это очень мотивирует)
16+
17+
## Функции
18+
19+
- Администраторы могут создавать особые ссылки для партнеров
20+
- Пройдя по ссылке, партнер пополняет свой баланс
21+
- Партнер может создавать сертификаты, используя свой баланс
22+
- Администраторы могут проверить статус сертификата по его номеру
23+
- Администраторы могут пометить сертификат как использованный
24+
525
## Техническая информация
626

727
### Стек
828

929
- [Python3](https://www.python.org/)
10-
- [Aiogram3](https://aiogram.dev/)
11-
- [Peewee](https://github.com/coleifer/peewee)
12-
- [Docker](https://www.docker.com/)
13-
- [Docker Compose](https://docs.docker.com/compose/)
14-
- [PostgreSQL](https://www.postgresql.org/)
30+
- [Aiogram3](https://aiogram.dev/) - библиотека для создания телеграм-ботов
31+
- [Peewee](https://github.com/coleifer/peewee) - легковесная ORM
32+
- [Docker](https://www.docker.com/) - контейнеризация
33+
- [Docker Compose](https://docs.docker.com/compose/) - удобный запуск нескольких контейнеров
34+
- [PostgreSQL](https://www.postgresql.org/) - база данных
35+
- [Redis](https://redis.io/) - быстрое хранилище типа ключ-значение
36+
37+
### Разработка
1538

16-
### Запуск
39+
#### Установка зависимостей
1740

18-
#### Продакшен
41+
Зависимости устанавливаются во время сборки Docker контейнера. Но чтобы в вашем редакторе кода работало автодополнение, рекомендуется также установить зависимости в виртуальную среду:
1942

2043
```bash
21-
docker compose --profile prod up --build -d
44+
python3 -m venv .venv
45+
source ./.venv/bin/activate
46+
pip install -r requirements.txt
2247
```
2348

24-
#### Разработка
49+
#### Запуск
2550

2651
```bash
2752
docker compose --profile dev up --build
2853
```
54+
55+
- `--profile dev` - использует параметры docker для разработки
56+
- `up` - запускает проект
57+
- `--build` - пересобирает контейнеры
58+
59+
При внесении изменений в файлы на диске бот перепускается. Реализовано с помощью [volumes](https://docs.docker.com/engine/storage/volumes/) и [watchdog](https://pypi.org/project/watchdog/)
60+
61+
#### Добавление новых пакетов
62+
63+
Все пакеты, использующиеся проектом (даже во время разработки) должны быть добавлены в `requirements.txt`
64+
65+
Команды ниже предполагают, чтовы уже [установили зависимости](#установка-зависимостей)
66+
67+
```bash
68+
pip install package # package - ваш пакет
69+
pip freeze > requirements.txt # обновляет requirements.txt
70+
```
71+
72+
### Продакшен
73+
74+
_Сборка и деплой автоматизированы с помощью [github-actions](https://github.com/coder8080/usmile/actions)_
75+
76+
**Команда запуска**
77+
78+
```bash
79+
docker compose --profile prod up -d
80+
```
81+
82+
- `--profile prod` - использует параметры docker для продакшена
83+
- `up` - запускает проект
84+
- `-d` - фоновый режим и запуск при загрузке системы

media/bot_logo.png

723 KB
Loading

media/bot_logo_small.png

73.6 KB
Loading

media/site_logo.jpg

13.6 KB
Loading

0 commit comments

Comments
 (0)