1.6 KiB
1.6 KiB
General Communication Service
A FastAPI-based general purpose communication service with SQLite integration.
Features
- FastAPI-based REST API
- SQLite database integration
- Alembic migrations
- CORS enabled with all origins allowed
- Health check endpoint
- API documentation at default paths
Project Structure
/
├── app/
│ ├── api/
│ │ ├── routes/
│ │ │ ├── health.py
│ │ │ └── api.py
│ ├── core/
│ ├── db/
│ │ └── session.py
│ ├── models/
│ │ └── base.py
│ └── schemas/
├── migrations/
│ ├── versions/
│ ├── env.py
│ └── script.py.mako
├── storage/
│ └── db/
├── alembic.ini
├── main.py
├── requirements.txt
└── README.md
Installation
- Clone the repository
- Install dependencies:
pip install -r requirements.txt
Running the Application
uvicorn main:app --reload
The application will be available at http://localhost:8000
API Documentation
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
- OpenAPI JSON: http://localhost:8000/openapi.json
Database Migrations
Generate a new migration:
alembic revision --autogenerate -m "description"
Apply migrations:
alembic upgrade head
Environment Variables
None required for basic setup, as SQLite database path is configured internally.
Database Configuration
SQLite database is configured to be stored at:
/app/storage/db/db.sqlite