How trinhcong1120/khaosat_client_for_springboot works
This is a Next.js survey-management frontend. Respondents enter a survey and submit answers; administrators manage survey definitions and review responses, while also administering users, roles, menus, API keys, and functions. The tree establishes these product areas, and sampled code confirms question editing, dashboard loading, menu retrieval, and failed-submission file operations. Most page-to-component wiring and the backend implementation were not sampled, so those relationships are not inferred.
Main entry points: admin Admin pages · QuestionEditor.tsx Question editor · failedSurveyStorage.ts Failed-file client · survey Survey management
Components 17
Survey experience
- Survey pages
src/app/survey
Administration
- Survey authoring
src/components/surveys - Survey management
src/app/admin/survey - Question editor
src/components/surveys/QuestionEditor.tsx - Admin pages
src/app/admin - Admin navigation
src/layout/AdminSidebar.tsx - Sign-in
src/components/auth/SignInForm.tsx
Reporting and recovery
- Dashboard
src/components/admin/AdminDashboard.tsx - Response results
src/components/result - Failed submissions
src/components/result/FailedSurveysPanel.tsx
Client services
- Auth utilities
src/lib/auth.ts - Dashboard client
src/lib/dashboard.ts - API configuration
src/lib/api.ts - Failed-file client
src/lib/failedSurveyStorage.ts
Other components
- Respondent
- Application API
- Menu service
Connections 17
- Respondent → Survey pages: opens survey
- Admin pages → Dashboard: renders dashboard
- Admin pages → Survey management: manages surveys
- Survey management → Question editor: edits questions
- Admin pages → Response results: reviews responses
- Admin pages → Failed submissions: reviews failures
- Admin pages → Admin navigation: shows navigation
- Admin pages → Sign-in: offers sign-in
- Sign-in → Auth utilities: uses auth state
- Dashboard → Dashboard client: loads metrics
- Dashboard client → Application API: requests metrics
- Question editor → API configuration: uses endpoints
- Question editor → Application API: saves questions
- Admin navigation → Menu service: fetches menu
- Failed submissions → Failed-file client: manages files
- Failed-file client → API configuration: uses endpoint
- Failed-file client → Application API: uploads and retrieves