This commit is contained in:
Mikhail Kilin
2026-01-31 03:48:50 +03:00
parent 1bf9b3d703
commit 644e36597d
37 changed files with 1070 additions and 600 deletions

View File

@@ -0,0 +1,25 @@
# Code Style and Conventions
## Rust Style
- Следовать стандартному Rust стилю (rustfmt)
- Snake_case для переменных и функций
- PascalCase для типов и enum вариантов
- SCREAMING_SNAKE_CASE для констант
## Project Conventions
- Использовать `Result<T, String>` для ошибок (планируется заменить на `Result<T>` с кастомным enum)
- Async/await для TDLib операций
- Группировать imports: std → external crates → local modules
- Константы вынесены в `src/constants.rs`
## Architecture Patterns
- Модульная структура: app, ui, input, tdlib, utils
- TdClient разделён на подмодули: auth, chats, messages, users, reactions
- ChatState enum для состояний чата (type-safe)
- Snapshot тесты для UI компонентов
- Integration тесты для business logic
## Documentation
- Комментарии на русском в коде (для логики)
- Doc-комментарии на английском (для публичного API)
- CLAUDE.md, CONTEXT.md, ROADMAP.md для документации проекта