36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
## О проекте
|
||
|
||
О проекте - в README.md.
|
||
|
||
## Правила кодирования
|
||
|
||
### uv
|
||
|
||
В проекте используется uv. С помощью uv add добавляем зависимости.
|
||
С помощью uv run запускаем.
|
||
|
||
### Type hints
|
||
Используй современный синтаксис type hints:
|
||
- `list[]`, `dict[]`, `tuple[]`, `set[]` вместо List, Dict, etc.
|
||
- `| None` вместо Optional
|
||
- Всегда указывай типы для параметров и возвращаемых значений
|
||
|
||
### Комментари ие комментарии в коде
|
||
- Только короткие докстринги к функциям на одну-две строчки
|
||
- Код должен быть самодокументируемым
|
||
|
||
### Логирование
|
||
- Используй базовое логирование через модуль `src/logger.py`
|
||
- **INFO** уровень - основные логи для пользователя (что происходит)
|
||
- **DEBUG** уровень - детальная информация для отладки
|
||
- Не спамь логами, только важная информация
|
||
- Уровень логирования настраивается через `LOG_LEVEL` в `.env`
|
||
|
||
## Конфигурация
|
||
Все секреты и настройки хранятся в `.env`. Смотри `.env.example` для примера.
|
||
|
||
### Переменные окружения
|
||
- Не используй значения по умолчанию для переменных окружения
|
||
- Если переменная не задана — выбрасывай ошибку при старте
|
||
- Это помогает сразу обнаружить проблемы с конфигурацией
|