availabili.tf/README.md

38 lines
1.0 KiB
Markdown
Raw Normal View History

2024-11-06 20:56:55 -08:00
# availabili.tf
Scheduling for TF2
## Tech Stack
- **Frontend:** [Vue 3](https://v3.vuejs.org/) + TypeScript
- **State Management:** [Pinia](https://pinia.vuejs.org/)
- **Backend:** [Flask](https://flask.palletsprojects.com/) + Python
- **ORM:** [SQLAlchemy](https://www.sqlalchemy.org/)
- **Validation:** [Pydantic](https://pydantic-docs.helpmanual.io/)
- [spectree](https://spectree.readthedocs.io/en/latest/index.html) for
OpenAPI documentation
- [Flask-Migrate](https://flask-migrate.readthedocs.io/en/latest/)
(Alembic) for database migrations
- **Database:** [PostgreSQL 17.1](https://www.postgresql.org/docs/17/index.html)
(production) / SQLite (development)
2024-11-06 20:56:55 -08:00
## Setup (dev)
2024-11-06 20:56:55 -08:00
```sh
docker compose up
2024-11-06 20:56:55 -08:00
```
App will run at port 8000.
2024-11-06 20:56:55 -08:00
## OpenAPI
2024-11-06 20:56:55 -08:00
The backend will automatically serve its OpenAPI-compliant spec at
`/apidoc/openapi.json` which can also be viewed at `/apidoc/redoc` or
`/apidoc/swagger` or `/apidoc/scalar`.
To generate the frontend client:
```sh
npm run openapi-generate
2024-11-06 20:56:55 -08:00
```