How pd172060-collab/deutschlernen works
Deutschlernen is a German-learning web application. Its apparent user workflow is browsing modules, lessons, topics and slides, then taking quizzes or module tests and reviewing results or progress on a dashboard. The tree suggests Spring MVC controllers, services, repositories and JSP views, but the only source excerpt is a small navigation-highlighting script; the README gives no architectural detail. Accordingly, relationships below are dashed and unverified rather than presented as inspected call paths.
Main entry points: views JSP views · service Content services · ModuleController.java Modules · LessonController.java Lessons
Components 21
Learning content
- Content initialization
src/main/java/com/example/germanlearning/config/DataInitializer.java - Modules
src/main/java/com/example/germanlearning/controller/ModuleController.java - Lessons
src/main/java/com/example/germanlearning/controller/LessonController.java - Topics
src/main/java/com/example/germanlearning/controller/TopicController.java - Slide viewer
src/main/java/com/example/germanlearning/controller/SlideController.java - Content services
src/main/java/com/example/germanlearning/service - Content repositories
src/main/java/com/example/germanlearning/repository
Quizzes and tests
- Question initialization
src/main/java/com/example/germanlearning/config/QuestionBankInitializer.java - Quizzes
src/main/java/com/example/germanlearning/controller/QuizController.java - Quiz assessment
src/main/java/com/example/germanlearning/service/impl/QuizServiceImpl.java - Module tests
src/main/java/com/example/germanlearning/controller/ModuleTestController.java - Test assessment
src/main/java/com/example/germanlearning/service/impl/ModuleTestServiceImpl.java - Assessment repositories
src/main/java/com/example/germanlearning/repository
Progress and dashboard
- Dashboard
src/main/java/com/example/germanlearning/controller/DashboardController.java - Dashboard summary
src/main/java/com/example/germanlearning/service/impl/DashboardServiceImpl.java - User progress
src/main/java/com/example/germanlearning/service/impl/UserProgressServiceImpl.java - Progress repository
src/main/java/com/example/germanlearning/repository/UserProgressRepository.java
Web application
- Application startup
src/main/java/com/example/germanlearning/GermanLearningApplication.java - JSP views
src/main/webapp/WEB-INF/views - Navigation script
src/main/resources/static/js/main.js
Other components
- Learner
Connections 28
- Learner → Modules: browses
- Learner → Lessons: opens lesson
- Learner → Topics: opens topic
- Learner → Slide viewer: views slides
- Learner → Quizzes: takes quiz
- Learner → Module tests: takes test
- Learner → Dashboard: views progress
- Modules → Content services: delegates to
- Lessons → Content services: delegates to
- Topics → Content services: delegates to
- Slide viewer → Content services: delegates to
- Content services → Content repositories: reads content
- Quizzes → Quiz assessment: delegates to
- Quiz assessment → Assessment repositories: reads and writes
- Module tests → Test assessment: delegates to
- Test assessment → Assessment repositories: reads and writes
- Dashboard → Dashboard summary: delegates to
- Dashboard summary → User progress: gets progress
- User progress → Progress repository: reads and writes
- Modules → JSP views: renders
- Lessons → JSP views: renders
- Topics → JSP views: renders
- Slide viewer → JSP views: renders
- Quizzes → JSP views: renders
- Module tests → JSP views: renders
- Dashboard → JSP views: renders
- Application startup → Content initialization: initializes
- Application startup → Question initialization: initializes