Automated Action a0217b10ac Initial project setup for food delivery API
- Set up project structure and FastAPI application
- Create configuration and security modules
- Add API routers and endpoint placeholders
- Add health check endpoint
- Update README.md with project details
2025-05-31 03:38:55 +00:00

78 lines
1.9 KiB
Markdown

# Food Delivery API
A backend API for a food delivery application built with FastAPI and SQLite.
## Features
- User authentication and registration
- Restaurant management
- Menu item management
- Order processing
- Delivery tracking
- Role-based access control
## Tech Stack
- **FastAPI**: Modern, fast web framework for building APIs
- **SQLite**: Lightweight, file-based relational database
- **SQLAlchemy**: SQL toolkit and Object-Relational Mapping (ORM)
- **Alembic**: Database migration tool
- **Pydantic**: Data validation and settings management
- **JWT**: JSON Web Tokens for authentication
- **Uvicorn**: ASGI server for running FastAPI applications
## Project Structure
```
.
├── app
│ ├── api
│ │ └── v1
│ │ ├── api.py
│ │ └── endpoints
│ │ ├── auth.py
│ │ ├── deliveries.py
│ │ ├── menu_items.py
│ │ ├── orders.py
│ │ ├── restaurants.py
│ │ └── users.py
│ ├── core
│ │ ├── config.py
│ │ └── security.py
│ ├── crud
│ ├── db
│ │ └── session.py
│ ├── models
│ ├── schemas
│ ├── services
│ └── utils
├── main.py
└── requirements.txt
```
## Getting Started
1. Clone the repository
2. Install dependencies:
```bash
pip install -r requirements.txt
```
3. Run the application:
```bash
uvicorn main:app --reload
```
## API Documentation
Once the application is running, you can access the API documentation at:
- **Swagger UI**: [http://localhost:8000/docs](http://localhost:8000/docs)
- **ReDoc**: [http://localhost:8000/redoc](http://localhost:8000/redoc)
## Environment Variables
Create a `.env` file in the root directory with the following variables:
```
SECRET_KEY=your_secret_key
```