A FastAPI-based API service implementing Clean Architecture principles.
The project follows the Clean Architecture pattern with the following layers:
- Core (
src/core/): Domain entities, repository interfaces, and DTOs. - Application (
src/application/): Use cases and business logic. - Infrastructure (
src/infrastructure/): Repository and service implementations. - API (
src/api/): FastAPI routes, dependencies, and middleware.
- API Documentation - Complete API endpoint documentation
- Database Schema - Database structure and relationships
- Development Guide - Setup and development guidelines
- User authentication with JWT tokens
- CRUD operations for users and notes
- Redis caching
- SQLAlchemy ORM for database operations
- Python 3.9+
- Redis (optional, for caching)
-
Clone the repository:
git clone https://github.com/yourusername/friday.git cd friday -
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -e ".[dev]" -
Create a
.envfile (see.env.examplefor reference)
For detailed setup instructions, see the Development Guide.
This project is licensed under the Apache License, Version 2.0.