DeutschLernen/GermanApp
Lasse Rune Hansen 6693165f83 feat(backend/story-integration): Phase 2 - Backend Services
Implement story integration backend services:
- Create StoryService (Application/Services/StoryService.cs) with full CRUD operations
- Create StoryGenerationService (Application/Services/StoryGenerationService.cs) for AI-powered story generation
  - Uses IMistralService for text generation
  - Uses ITtsService for audio generation
  - Splits stories into segments per lesson
- Create StoryUnlockService (Application/Services/StoryUnlockService.cs) for progress management
  - Handles lesson completion → story segment unlocking
- Create StoryController (Presentation/Controllers/StoryController.cs) with 12 endpoints:
  - GET /api/story/levels - list levels with stories
  - GET /api/story/levels/{levelId}/segments - get segments for level
  - GET /api/story/segments/{id} - get specific segment
  - POST /api/story/segments - create segment (Admin)
  - PUT /api/story/segments/{id} - update segment (Admin)
  - DELETE /api/story/segments/{id} - delete segment (Admin)
  - POST /api/story/levels/{levelId}/generate - generate story with AI (Admin)
  - POST /api/story/segments/{segmentId}/audio - generate audio (Admin)
  - GET /api/story/levels/{levelId}/progress - get user progress
  - POST /api/story/segments/{segmentId}/complete - mark as completed
  - GET /api/story/levels/{levelId}/next - get next segment
  - GET /api/story/segments/{segmentId}/unlocked - check if unlocked
  - GET /api/story/segments/{segmentId}/audio - get audio URL
  - GET /api/story/levels/{levelId}/lessons-with-stories - get lessons with story status
- Register all services in Program.cs DI container
- Update feature document to reflect Phase 2 completion

Next: Phase 3 - AI Integration (unit tests for services)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-06-13 13:37:16 +02:00
..
Application feat(backend/story-integration): Phase 2 - Backend Services 2026-06-13 13:37:16 +02:00
Domain feat(backend/story-integration): Phase 1 - Database & Models 2026-06-13 13:23:12 +02:00
Infrastructure feat(backend/story-integration): Phase 2 - Backend Services 2026-06-13 13:37:16 +02:00
Presentation feat(backend/story-integration): Phase 2 - Backend Services 2026-06-13 13:37:16 +02:00
Properties Initial commit: GermanApp with Clean Architecture 2026-05-31 18:14:51 +02:00
Shared feat(backend/infra): add health checks, CORS, Serilog logging, and exception middleware 2026-05-31 19:52:00 +02:00
.dockerignore feat(backend/infra): add Docker configuration for Phase 3 2026-06-05 11:46:27 +02:00
Dockerfile fix(infra): remove problematic health checks for now 2026-06-05 13:03:10 +02:00
GermanApp.csproj feat(backend/infrastructure): implement Mistral API Connector (Phase 0 of AI Services) 2026-06-09 18:56:37 +02:00
GermanApp.http Initial commit: GermanApp with Clean Architecture 2026-05-31 18:14:51 +02:00
Program.cs feat(backend/story-integration): Phase 2 - Backend Services 2026-06-13 13:37:16 +02:00