Initial setup of frontend and backend

This commit is contained in:
Julian Tabel
2026-02-04 17:13:58 +01:00
parent 259c200d93
commit 6ee53a0533
72 changed files with 5687 additions and 0 deletions

68
backend/README.md Normal file
View File

@@ -0,0 +1,68 @@
# Nuzlocke Tracker API
Backend API for the Nuzlocke Tracker application, built with FastAPI.
## Development Setup
### Option 1: Docker (Recommended)
From the project root:
```bash
docker compose up
```
This starts the API, frontend, and PostgreSQL database with hot reload enabled.
### Option 2: Local Setup
1. Create and activate virtual environment:
```bash
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
```
2. Install dependencies:
```bash
pip install -e ".[dev]"
```
3. Copy environment file:
```bash
cp .env.example .env
```
4. Run the development server:
```bash
uvicorn app.main:app --reload --app-dir src
```
The API will be available at http://localhost:8000
## API Documentation
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
## Project Structure
```
backend/
├── src/
│ └── app/
│ ├── api/ # API routes
│ ├── core/ # Core configuration
│ ├── models/ # Database models
│ ├── schemas/ # Pydantic schemas
│ └── services/ # Business logic
├── tests/ # Test files
├── pyproject.toml # Project configuration
└── .env.example # Example environment variables
```
## Linting & Formatting
```bash
ruff check . # Check for issues
ruff check . --fix # Fix auto-fixable issues
ruff format . # Format code
```