How thehexalab/moodit works
MoodIT is a student-facing academic collaboration and learning platform. The visible application entry routes users into the protected dashboard; backend services provide authentication, course and community features, quizzes and code execution, permissions, live events, and professor feedback analysis. The graph preserves those documented capabilities, but the excerpts do not show the frontend’s API calls or most service-to-service routing, so those connections are omitted or marked unverified.
Main entry points: ExecutionService.java Execution engine · App.tsx Web application · AuthService.java Authentication flows · RealtimeEventPublisher.java Live event publisher
Components 21
Student application
- Web application
frontend/src/App.tsx
Identity and access
- Authentication API
auth-service/src/main/java/com/moodit/auth_service/controller/AuthController.java - Authentication flows
auth-service/src/main/java/com/moodit/auth_service/service/AuthService.java - Identity records
auth-service/src/main/java/com/moodit/auth_service/repository/UserRepository.java - API gateway
gateway/src/main/java/com/moodit/gateway/filter/JwtAuthFilter.java - Access rules
permission-service/src/main/java/com/moodit/permission_service/service/PermissionService.java - Membership checks
permission-service/src/main/java/com/moodit/permission_service/service/MembershipService.java - Email delivery
auth-service/src/main/java/com/moodit/auth_service/service/EmailService.java
Academic platform
- Course management
core-service/src/main/java/com/moodit/core_service/controller/CourseController.java - Academic records
core-service/src/main/java/com/moodit/core_service/model/Program.java - Course forums
core-service/src/main/java/com/moodit/core_service/service/ForumService.java - Quiz workflows
core-service/src/main/java/com/moodit/core_service/service/QuizService.java - Audit logging
core-service/src/main/java/com/moodit/core_service/service/AuditLogService.java
Execution and realtime
- Code execution API
execution-service/src/main/java/com/moodit/execution_service/controller/ExecutionController.java - Execution engine
execution-service/src/main/java/com/moodit/execution_service/service/ExecutionService.java - Code assembly
execution-service/src/main/java/com/moodit/execution_service/assembly/CodeAssembler.java - Piston runner
execution-service/src/main/java/com/moodit/execution_service/piston/PistonClient.java - Live event publisher
core-service/src/main/java/com/moodit/core_service/realtime/RealtimeEventPublisher.java
AI feedback
- Feedback analysis
mcp-service/src/main/java/com/moodit/mcp_service/service/McpService.java - MCP analysis provider
mcp-service/src/main/java/com/moodit/mcp_service/service/mcp/OpenAiCompatibleMcpAnalysisClient.java
Other components
- Student
Connections 17
- Student → Web application: uses
README.md - Web application → Authentication API: authenticates
- Web application → API gateway: uses APIs
- Authentication API → Authentication flows: delegates to
auth-service/src/main/java/com/moodit/auth_service/controller/AuthController.java - Authentication flows → Identity records: reads and writes
auth-service/src/main/java/com/moodit/auth_service/service/AuthService.java - Authentication flows → Email delivery: sends codes
auth-service/src/main/java/com/moodit/auth_service/service/AuthService.java - API gateway → Access rules: checks access
- Access rules → Membership checks: checks membership
- Course management → Academic records: manages records
- Quiz workflows → Execution engine: requests grading
core-service/src/main/java/com/moodit/core_service/service/QuizService.java - Quiz workflows → Live event publisher: publishes attempts
core-service/src/main/java/com/moodit/core_service/service/QuizService.java - Course forums → Live event publisher: broadcasts updates
core-service/src/main/java/com/moodit/core_service/service/ForumService.java - Code execution API → Execution engine: invokes
execution-service/src/main/java/com/moodit/execution_service/controller/ExecutionController.java - Execution engine → Code assembly: assembles code
execution-service/src/main/java/com/moodit/execution_service/service/ExecutionService.java - Execution engine → Piston runner: runs code
execution-service/src/main/java/com/moodit/execution_service/service/ExecutionService.java - Feedback analysis → MCP analysis provider: analyzes feedback
- Feedback analysis → Live event publisher: pushes results