@startwbs

!procedure $app_entry($name)
[#SkyBlue] $name
!endprocedure

* Корень проекта
** kupol_mgmnt_rc
*** alembic
*** app
**** core
*****_ config.py
******_ <i>Тут хранится настройка приложения для работы</i>\n<i>Например загрузка переменных окружения</i>
*****_ db.py
******_ <i>Тут хранятся настройки интерфейсов работы с БД</i>\n<i>Например инициализация движка sqlalchemy</i>
****$app_entry(process)
*****$app_entry(api)
******_ <i>Тут лежат API endpoint'ы для приложения</i>\n<i>(aналог views в django)</i> 
*****$app_entry(schemas)
******_ <i>Тут описываются модели приложения</i>\n<i>(аналог models в django)</i> 
*****$app_entry(services)
******_ <i>Тут описываются бизнес логика приложения</i> 
*****$app_entry(tests)
******_ <i>Тут хранятся тесты</i> 
*****$app_entry(DTO)
******_ <i>Тут хранятся DTO объекты для данных,</i>\n<i>используемых в приложении</i> 
*****$app_entry(routes)
******_ <i>Тут хранятся URL роутеры</i>\n<i>используемые в приложении</i> 
****$app_entry(request)
*****_ <i>Формат содержимого аналогичен другим приложениям</i>\n<i>(На данный момент только process)</i> 
**** router
*****_ routes.py
******_ <i>Файл, в котором агрегируются все</i>\n<i>роуты из всех приложений</i> 
****_ main.py
*** doc
***_ Dockerfile
****_ <i>Используется для сборки backend приложения</i> 
***_ poetry.lock
****_ <i>Используется в первую очередь для разработки</i> 
***_ pyproject.toml
****_ <i>Используется в первую очередь для разработки</i> 
**_ docker-compose.yml
---_ <i>Файл запуска приложения</i>
**_ .env
---_ <i>Файл окружения, который</i>\n<i>используется всеми компонентами приложения</i>
@endwbs