This is my project, a prototype of a student journal and gradebook app, similar to a Student Information System (SIS) or Online School Diary.
- Framework: FastAPI
- ORM: SQLAlchemy 2.0
- Database: PostgreSQL
- Migrations: Alembic
- Message-broker: RabbitMQ
- Task manager: TaskIQ
Follow these steps to set up the application.
git clone git@github.com:Farlavendi/FastAPI_School_Journal.gitImportant
Configure environment variables. The required variables can be found in .env.template file.
openssl genpkey -algorithm RSA -out src/certs/private.pem -pkeyopt rsa_keygen_bits:2048 openssl rsa -pubout -in src/certs/private.pem -out certs/public.pemNote
These keys are required for JWT auth.
docker-compose up -d Tip
You can also you Makefile commands. In this case you can just use "make up".
docker compose exec fastapi alembic upgrade head- http://localhost:8000/docs - Swagger UI
- http://localhost:8000/redoc - ReDoc
- http://localhost:8080/ - Maildev
- http://localhost:15672/ - RabbitMQ