Working FastAPI API with a User and Profile models and schemas.
- Fork this repository
- Complete the tasks below adhering to the requirements
- Submit a pull request with your solution in your forked repository
- Deliver a GitHub repository with your solution (it can be private, just give access to @arielaco)
- Create a User and Profile models and schemas
- Develop a REST API exposing CRUD endpoints for both models
- Test at least 2 endpoints using pytest (with fixtures)
- Point docs to root path
- Create requirements file
- Add a section on
README.md
with setup (venv), install (pip), run and testing instructions
- Email as username
- Can have multiple profiles
- Can have a list of favorite profiles
- It has a name and a description
- Belongs to a user
- Use English for all code, comments, commit messages, and documentation
- Delete dead code (unrelated to tasks)
- All responses must be JSON
- Implement proper folder structure
- Validation must be done using Pydantic
- Use multiple commits (when possible, use conventional commit messages)
You must have Docker installed:
https://docs.docker.com/engine/install/
Set up the development environment:
docker compose -f dockerfiles/docker-compose.yml up --build
docker exec -it fastapi bash
In the container:
bash scripts/update_requirements.sh
Paste code from docs/app.tree
to
https://www.bpmn-sketch-miner.ai/
In the container:
coverage run -m pytest
coverage html