How leets-official/job-is-fe works
Job-is-FE is the React frontend for a Korean job-information service. Its user-facing routes cover sign-in and onboarding, aptitude quizzes, job discovery and detail, personalized recommendations, saved-job history, profile documents, and account settings. The main flow is route selection into feature screens, with feature hooks using API modules and shared request infrastructure; authentication state supports session handling. The README establishes the product scope, while route and source-index evidence supports only some internal links, so unsampled feature relationships are not inferred.
Main entry points: router.tsx Route map · App.tsx App shell · login Sign-in and recovery · QuizPage.tsx Aptitude quiz
Components 23
Application shell
- App shell
src/App.tsx - Route map
src/routes/router.tsx - Query provider
src/providers/QueryProvider.tsx
Identity and onboarding
- Sign-in and recovery
src/features/login - Auth session state
src/store/useAuthStore.ts - Profile onboarding
src/features/onboarding - Aptitude quiz
src/pages/QuizPage/QuizPage.tsx
Job discovery
- Job exploration
src/pages/ExplorePage/ExplorePage.tsx - Search and filters
src/features/jobs/hooks/useExploreFilters.ts - Job detail
src/pages/JobDetailPage/JobDetailPage.tsx
Recommendations and profile
- Recommendations
src/features/recommendations - Saved jobs
src/features/savedJobs - Profile documents
src/features/profile/components/ProfileDocumentsManager.tsx - Document actions
src/features/profile/hooks/useProfileDocumentsManager.ts - Account settings
src/features/settings
Data and services
- Authentication API
src/api/auth.ts - Jobs API
src/api/jobs.ts - Profile API
src/api/profile.ts - Quiz API
src/api/quiz.ts - HTTP transport
src/api/base/client.ts - Request helpers
src/api/base/request.ts - Query key catalog
src/constants/queryKey.ts
Other components
- Job seeker
Connections 26
- Job seeker → App shell: uses
README.md - App shell → Route map: mounts routes
src/App.tsx - App shell → Query provider: provides queries
src/App.tsx - Route map → Sign-in and recovery: routes to
src/routes/router.tsx - Route map → Profile onboarding: routes to
- Route map → Aptitude quiz: routes to
src/routes/router.tsx - Route map → Job exploration: routes to
src/routes/router.tsx - Route map → Job detail: routes to
src/routes/router.tsx - Route map → Recommendations: routes to
src/routes/router.tsx - Route map → Saved jobs: routes to
src/routes/router.tsx - Route map → Profile documents: routes to
src/routes/router.tsx - Route map → Account settings: routes to
src/routes/router.tsx - Sign-in and recovery → Authentication API: uses
src/features/login/hooks/useAuthSession.ts - Sign-in and recovery → Auth session state: updates session
src/features/login/hooks/useOAuthCallback.ts - Profile onboarding → Profile API: uses
src/features/onboarding/hooks/useOnboardingFlow.ts - Aptitude quiz → Quiz API: uses
src/pages/QuizPage/QuizPage.tsx - Aptitude quiz → Query key catalog: uses keys
- Job exploration → Search and filters: uses filters
- Search and filters → Jobs API: queries jobs
src/features/jobs/hooks/useExploreFilters.ts - Authentication API → HTTP transport: posts with CSRF
src/api/auth.ts - Authentication API → Request helpers: sends requests
src/api/auth.ts - Jobs API → Request helpers: sends requests
src/api/jobs.ts - Profile API → Request helpers: sends requests
src/api/profile.ts - HTTP transport → Auth session state: reads tokens
src/api/base/client.ts - Profile documents → Document actions: uses actions
src/features/profile/components/ProfileDocumentsManager.tsx - Document actions → Profile API: loads files