An open API service indexing awesome lists of open source software.

https://github.com/yaroniks/fastapi-base

Базовый шаблон приложения на FastAPI
https://github.com/yaroniks/fastapi-base

alembic docker docker-compose fastapi pydantic python rabbitmq sqlachemy

Last synced: 7 months ago
JSON representation

Базовый шаблон приложения на FastAPI

Awesome Lists containing this project

README

          

# Базовый шаблон приложения на FastAPI

Установка без докера:
```bash
git clone https://github.com/yaroniks/fastapi-base.git
cd fastapi-base
```

Настройте файл `.env` под себя и далее:
```bash
python -m venv .venv
.venv\scripts\activate # для windows
source .venv/bin/activate # для linux
pip install -r requirements.txt
```

Запуск:
```bash
.venv\scripts\activate # для windows
source .venv/bin/activate # для linux
python main.py
```

---

Структура файлов:
```
│ .env
│ alembic.ini
│ config.py # настройки, доступ к .env
│ docker-compose.yml
│ Dockerfile
│ main.py # основной файл fastapi
│ requirements.txt

├───app
│ │ limiter.py # RateLimit
│ │
│ ├───database # работа с бд
│ │ │ base.py # базовый класс
│ │ │
│ │ └───models # модели sqlaclhemy и запросы в бд
│ │
│ ├───routers # роутеры
│ │
│ ├───schemas # схемы pydantic
│ │
│ └───utils
│ │ enums.py # все Enum'ы
│ │
│ └───rabbitmq # consumer и producer rabbitmq

├───migration # файлы alembic'a

├───tests # тесты

└───workers
└───rabbitmq # запуск consumer'а rabbitmq
Dockerfile
main.py
requirements.txt
```

Автор: Yarovich