This project is a RESTful API for storing and managing contacts. It is built using FastAPI and uses SQLAlchemy as the ORM layer to interact with a PostgreSQL database.
The API allows users to perform basic CRUD operations on contact records, as well as search contacts and retrieve upcoming birthdays.
- Create a new contact
- Retrieve all contacts
- Retrieve a single contact by ID
- Update an existing contact
- Delete a contact
- Search contacts by first name, last name, or email
- Retrieve contacts with birthdays in the next 7 days
- Fully documented with Swagger/OpenAPI
- FastAPI – for building the web API
- SQLAlchemy – ORM for database interactions
- Pydantic – for data validation and serialization
- PostgreSQL – database engine
- Uvicorn – ASGI server for running the FastAPI app