despues de clonar el repositorio:
-
correr
pip install pre-commit
, luegopre-commit install
y finalmentepre-commit install --hook-type commit-msg
. -
correr
mkdir pgadmin
-
correr
cp .env.example .env
y rellenar variables de entorno
docker compose up --build
docker compose exec api poetry run alembic upgrade head
docker compose exec api poetry run alembic downgrade base
docker compose exec db psql -h localhost -U postgres --dbname=<dbname>
docker compose exec api poetry run pytest -v -s (-s is optional, outputs logs to stdout)
-
poetry: dependency management
-
FastAPI
-
alembic: migrations
-
SQLAlchemy: orm and database connection
-
pytest: tests
-
pydantic: data parsing, data validation (input and output)
-
loguru: logging to stdout and disk (overrides uvicorn handlers)
-
httpx & asgi-lifespan: permite a pytest correr tests con funciones asincronas (necesarias para hacer queries a la db)