How justuju-in/feedback-process works
Feedback Process is a team application for requesting, giving, receiving, and tracking feedback. Its main domain flow covers account creation and verification, request creation, feedback submission, receiver acknowledgement and closure, then history and notifications. Requests also support schedules, due dates, drafts, discussion, follow-ups, attachments, privacy, and moderation; templates, reports, and analytics are distinct capabilities. Backend routes and controllers dispatch to services, which use MySQL and optional email/Mattermost integrations. Frontend-to-API wiring and several unsampled subsystem internals are not shown because the available source excerpts do not establish those calls.
Main entry points: connection.js MySQL · server.js API server · feedbackRequestService.js Request service · feedbackRequestController.js Request controller
Components 24
Web application
- Feedback app
app/page.jsx - Account pages
app/login/page.jsx - Registration
app/register/page.jsx - Email verification
app/verify-email/page.jsx
Accounts
- Auth routes
backend/src/routes/authRoutes.js - Auth controller
backend/src/controllers/authController.js - Auth service
backend/src/services/authService.js - User management
backend/src/services/userService.js
Feedback workflow
- Request routes
backend/src/routes/feedbackRequestRoutes.js - Request controller
backend/src/controllers/feedbackRequestController.js - Request service
backend/src/services/feedbackRequestService.js - Answer service
backend/src/services/feedbackAnswerService.js - Schedule service
backend/src/services/feedbackScheduleService.js - Reminder job
backend/src/jobs/feedbackReminderJob.js - Templates
backend/src/services/templateService.js
Insights and oversight
- Feedback reports
backend/src/services/feedbackReportService.js - Feedback analytics
backend/src/services/feedbackAnalyticsService.js
Backend platform
- Email service
backend/src/integrations/email.js - Notifications
backend/src/services/notificationService.js - Notification routes
backend/src/routes/notificationRoutes.js - MySQL
backend/src/db/connection.js - API server
backend/src/server.js
Other components
- Team member
- Mattermost
backend/src/integrations/mattermost.js
Connections 31
- Team member → Feedback app: uses
- Team member → Account pages: signs in
- Team member → Registration: registers
- Team member → Email verification: verifies email
- API server → Auth routes: mounts
- API server → Request routes: mounts
- API server → Notification routes: mounts
- Auth routes → Auth controller: dispatches
- Auth controller → Auth service: calls
- Auth service → MySQL: reads/writes
- Auth service → Email service: sends verification/reset
- Request routes → Request controller: dispatches
- Request controller → Request service: calls
- Request controller → Answer service: calls
- Request controller → Schedule service: calls
- Request service → MySQL: reads/writes
- Answer service → MySQL: reads/writes
- Schedule service → MySQL: reads/writes
- Request service → Notifications: creates
- Request service → Email service: sends feedback email
- Request service → Mattermost: sends alerts
- Reminder job → Request service: requests reminders
- Request controller → Templates: uses templates
- Notification routes → Notifications: dispatches
- Notifications → MySQL: reads/writes
- API server → Feedback reports: mounts report routes
- API server → Feedback analytics: mounts analytics routes
- API server → User management: mounts user routes
- Feedback reports → MySQL: reads/writes
- Feedback analytics → MySQL: reads
- User management → MySQL: reads/writes