A RESTful API built with FastAPI and MongoDB for managing authentic Cameroonian recipes with JWT authentication, filtering, pagination, and Docker support.
# Cameroon Recipe API
> A RESTful API built with **FastAPI**, **MongoDB**, and **Docker** for managing authentic Cameroonian recipes with JWT authentication, filtering, pagination, and automatic database seeding.
---
## About
Cameroon Recipe API is a RESTful backend application that provides a complete API for discovering, managing, and sharing authentic Cameroonian recipes.
The project demonstrates modern backend development using FastAPI, MongoDB, JWT authentication, Docker, filtering, pagination, and automatic database seeding.
---
## Technology Stack
| Category | Technology |
| ---------------- | ------------- |
| Backend | FastAPI |
| Database | MongoDB Atlas |
| Authentication | JWT |
| Validation | Pydantic |
| Driver | Motor |
| Containerization | Docker |
---
## Features
| Feature | Description |
| ------------------------- | ---------------------------------------------------------- |
| JWT Authentication | Secure authentication and protected endpoints |
| Recipe Management | Full CRUD operations for recipes |
| Filtering & Search | Filter by region, category, difficulty, and keyword |
| Pagination | Configurable paginated responses |
| Database Seeding | Automatically populate the database with authentic recipes |
| Interactive Documentation | Swagger UI and ReDoc |
| Docker Support | Ready for containerized deployment |
## Architecture
Client
│
▼
FastAPI
│
├─────────────┐
▼ ▼
JWT Auth MongoDB Atlas
│
▼
Recipes Collection
## Installation
git clone
github.com
cd cameroon-recipe-api
## Running the API
Start the development server:
```bash
uvicorn app.ma …