shinkan-jinkendo/README.md

119 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

# Shinkan Jinkendo (真観)
**Trainer- und Vereinsplattform für Kampfsport-Trainingsplanung**
Teil der Jinkendo-App-Familie (人拳道)
## Was ist Shinkan?
Shinkan ist eine moderne Web- und Mobile-App für Kampfsport-Trainer und Vereine. Im Fokus stehen:
- **Übungsverwaltung:** Zentrale Übungsbibliothek mit Suche und Filter
- **Trainingsplanung:** Effiziente Planung für Gruppen und Termine
- **Kataloge:** Fähigkeiten und Trainingsmethoden strukturiert verwalten
- **Standardisierung:** Vereinsstandards und wiederverwendbare Vorlagen
- **Freigabe:** Gesteuerte Veröffentlichung von Inhalten
- **Medien:** Zentrale **Medienbibliothek** (`/media`), Archiv mit Lifecycle/Papierkorb, Verknüpfung in Übungen — Norm: `.claude/docs/technical/MEDIA_ASSETS_AND_ARCHIVE_SPEC.md` · Einstieg: `docs/HANDOVER.md`
## Nicht in Shinkan
- Kein persönliches Sportler-Tracking (dafür: Mitai Jinkendo)
- Kein Gürtel-Tracking im MVP
- Keine individuellen Technik-Fortschritte im MVP
## Tech-Stack
- **Frontend:** React 18 + Vite + PWA
- **Backend:** FastAPI (Python 3.12)
- **Datenbank:** PostgreSQL 16
- **Container:** Docker + Docker Compose
- **Auth:** Token-basiert + bcrypt
## Installation (Lokal)
### Voraussetzungen
- Node 20+
- Python 3.12+
- PostgreSQL 16
- Docker + Docker Compose
### Setup
```bash
# Repository clonen
git clone http://192.168.2.144:3000/Lars/shinkan-jinkendo.git
cd shinkan-jinkendo
# Environment-Variablen
cp .env.example .env
# .env anpassen!
# Backend
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# Frontend
cd ../frontend
npm install
# Datenbank
docker compose up -d postgres
# Migrations (automatisch beim Start)
cd ../backend
python main.py
```
### Development
```bash
# Backend (Terminal 1)
cd backend
source venv/bin/activate
uvicorn main:app --reload --port 8098
# Frontend (Terminal 2)
cd frontend
npm run dev
```
Frontend: http://localhost:3098
Backend: http://localhost:8098
### Docker (Empfohlen)
```bash
# Development
docker compose -f docker-compose.dev-env.yml up --build
# Production
docker compose up --build
```
## Deployment
**Production:** https://shinkan.jinkendo.de
**Development:** https://dev.shinkan.jinkendo.de
Auto-Deploy via Gitea Actions:
- `develop` → Dev-Umgebung
- `main` → Prod-Umgebung
## Dokumentation
- **Setup:** `.claude/docs/working/SHINKAN_PROJECT_SETUP.md`
- **Anforderungen:** `.claude/docs/functional/SHINKAN_REQUIREMENTS.md`
- **Architektur:** `.claude/rules/ARCHITECTURE.md`
## Lizenz
Proprietary – Lars Stommer
## Kontakt
- **Entwickler:** Lars Stommer
- **E-Mail:** stommer@gmail.com
- **Gitea:** http://192.168.2.144:3000/Lars/shinkan-jinkendo