How bohmide/outi-d-desktop works
Outi-D is a JavaFX desktop learning and community client. Users sign in, then navigate courses and quizzes, participate in forums, or browse and reserve events; the UI also supports content export and event QR codes. The README describes REST/JWT access to a Symfony backend, while sampled services show direct JDBC through MyConnection, so both are represented without assuming a single data-access path. Several README capabilities are represented from documentation and the tree; their implementation wiring was not sampled.
Main entry points: EventService.java Event service · MyConnection.java JDBC connection · MainController.java Main navigation · ForumViewController.java Forum screens
Components 27
Desktop UI
- Login and signup
src/main/java/controllers/LoginController.java - Main navigation
src/main/java/controllers/MainController.java
Learning
- Course screens
src/main/java/controllers/CoursControllerEtudiant.java - Chapter screens
src/main/java/controllers/ChapitreControllerEtudiant.java - Quiz screens
src/main/java/controllers/QuizControllerEtudiant.java - Course service
src/main/java/Services/CoursService.java - Chapter service
src/main/java/Services/ChapitreService.java - Quiz service
src/main/java/Services/QuizService.java
Community
- Forum screens
src/main/java/controllers/ForumViewController.java - Post screens
src/main/java/controllers/PostViewController.java - Forum service
src/main/java/services/ForumService.java - Post service
src/main/java/services/PostService.java - Comment service
src/main/java/services/CommentService.java
Events
- Event administration
src/main/java/controllers/evenement/EventController.java - Student events
src/main/java/controllers/evenement/student/EventStudentController.java - Event service
src/main/java/services/EventService.java - Genre service
src/main/java/services/EventGenreService.java - Sponsor service
src/main/java/services/SponsorsService.java
Shared services
- Barcode encoding
lib/core/src/main/java/com/google/zxing/qrcode/QRCodeWriter.java - PDF export
src/main/java/services/PDFService.java - Certification PDF and mail
src/main/java/Services/CertificationService.java - JDBC connection
src/main/java/utils/MyConnection.java
Other components
- Learner
- Shared SQL database
- Symfony REST API
- Translation API
- Stripe payments
Connections 26
- Learner → Login and signup: starts session
- Login and signup → Symfony REST API: authenticates via JWT
- Learner → Main navigation: uses
- Main navigation → Course screens: opens
- Main navigation → Forum screens: opens
- Main navigation → Student events: opens
- Course screens → Course service: requests courses
- Chapter screens → Chapter service: requests chapters
- Quiz screens → Quiz service: manages quizzes
- Forum screens → Forum service: loads forums
- Forum screens → Post screens: opens posts
- Post screens → Post service: manages posts
- Student events → Event service: lists events
- Event administration → Event service: manages events
- Event administration → Barcode encoding: encodes QR
- Event service → Genre service: loads genres
- Event service → Sponsor service: loads sponsors
- Chapter service → JDBC connection: uses JDBC
- Quiz service → JDBC connection: uses JDBC
- Post service → JDBC connection: uses JDBC
- Event service → JDBC connection: uses JDBC
- JDBC connection → Shared SQL database: connects to
- Learner → Translation API: requests translation
- Learner → Stripe payments: pays online
- Learner → PDF export: exports content
- Quiz screens → Certification PDF and mail: requests certification