All checks were successful
Deploy Development / deploy (push) Successful in 34s
Test Suite / pytest-backend (push) Successful in 25s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 7s
Test Suite / playwright-tests (push) Successful in 23s
- Introduced a centralized media archive (`/media`) with lifecycle management, including soft delete and recovery options. - Enhanced media upload functionality to support multiple files and automatic type inference. - Updated documentation to reflect the new media architecture and inline media linking specifications. - Version bump to 0.8.59 to accommodate changes in media handling and database schema. Co-authored-by: Cursor <cursoragent@cursor.com>
2.7 KiB
2.7 KiB
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
# 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
# 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)
# 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-Umgebungmain→ 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