feat: Phase 1 complete – full working application

Backend (FastAPI):
- REST API: auth, plants, beds, plantings
- CRUD layer with CRUDBase
- Pydantic v2 schemas for all entities
- Alembic migration: complete schema + all enums
- Seed data: 28 global plants + 15 compatibilities

Frontend (Vue 3 + PrimeVue):
- Axios client with JWT interceptor + auto-refresh
- Pinia stores: auth, beds, plants
- Views: Login, Beds, BedDetail, PlantLibrary
- Components: AppLayout, BedForm, PlantingForm, PlantForm

Docker:
- docker-compose.yml (production)
- docker-compose.dev.yml (development with hot-reload)
- Nginx config with SPA fallback + API proxy
- Multi-stage frontend Dockerfile
- .env.example, .gitignore

Version: 1.0.0-alpha
This commit is contained in:
Faultier314
2026-04-06 07:45:00 +02:00
parent 905115d115
commit 834a3bf4d5
51 changed files with 2918 additions and 100 deletions

View File

@@ -4,6 +4,36 @@ Alle wesentlichen Änderungen am Projekt werden hier dokumentiert.
Format: `[MAJOR.MINOR.PATCH] - YYYY-MM-DD`
---
## [1.0.0-alpha] - 2026-04-06
### Added Phase 1 komplett implementiert
**Backend (FastAPI)**
- `app/main.py` FastAPI App mit CORS und /health Endpoint
- `app/api/v1/` Vollständige REST-API: Auth, Plants, Beds, Plantings
- `app/crud/` CRUD-Layer für alle Entitäten (CRUDBase + spezialisierte Klassen)
- `app/schemas/` Pydantic v2 Schemas komplett (plant, bed, planting)
- `app/seeds/initial_data.py` 28 globale Pflanzen + 15 Kompatibilitäten (idempotent)
- `alembic/env.py` + `versions/001_initial.py` Vollständiges DB-Schema
**Frontend (Vue 3)**
- `src/api/` Axios-Client mit JWT-Interceptor und Auto-Refresh
- `src/stores/` Pinia Stores: auth, beds, plants
- `src/router/` Vue Router mit Auth-Guard
- `src/views/` Login, Beete-Übersicht, Beet-Detail, Pflanzenbibliothek
- `src/components/` AppLayout, BedForm, PlantingForm, PlantForm
**Docker**
- `docker-compose.yml` Produktion (db + backend + frontend/nginx)
- `docker-compose.dev.yml` Entwicklung mit Hot-Reload
- `frontend/Dockerfile` Multi-stage Build (Node → nginx:alpine)
- `frontend/nginx.conf` SPA-Fallback + API-Proxy
- `.env.example` Konfigurationsvorlage
- `.gitignore` hinzugefügt
---
## [0.2.3] - 2026-04-05
### Changed