Demand Routes
π― Overviewβ
Each demand route follows: URL β Validators β Handler β State Update
π Authentication Routesβ
Loginβ
π URL: /login
π Current Page: login
π§ Handler: handleAuthLoginRoute
- Captures intended URL from query parameters
- Sets up login form state
- Handles post-login redirects
β
Validators: isUserNotLoggedIn
- Redirects already authenticated users away from login
Logoutβ
π URL: /logout
π Current Page: logout
π§ Handler: handleAuthLogoutRoute
- Clears user session and authentication data
- Invalidates auth tokens
- Redirects to login page
β Validators: None
Sign Upβ
π URL: /sign-up
π Current Page: sign_up
π§ Handler: handleAuthSignUpRoute
- Provides user registration form
- Sets up new account creation
- Handles initial user data collection
β
Validators: scrollTo
(scroll to top)
Sign Up Wizardβ
π URL: /sign-up-wizard/:page
π Current Page: sign_up_wizard
π§ Handler: handleSignUpWizardRoute
- Multi-step onboarding process
- Loads categories and attributes for profile setup
- Handles wizard page navigation and completion
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user dataisEmailNotVerifiedRedirect
- Redirects if email not verifiedclearFilters
- Resets any existing filters
Verify Email Successβ
π URL: /verify-email-success/:verifyEmailToken
π Current Page: verify_email_success
π§ Handler: handleVerifyEmailSuccessRoute
- Processes email verification tokens
- Confirms user email address
- Updates email verification status
β Validators: None (public route)
π Dashboard Routesβ
Home Dashboardβ
π URL: /home
π Current Page: home
π§ Handler: handleHomeRoute
- Loads dashboard overview data
- Fetches recent positions, categories, and attributes
- Displays job seeker dashboard with opportunities
β
Validators: isUserNotLoggedIn
- Ensures only authenticated users access dashboard
My Pageβ
π URL: /mypage
π Current Page: my_page
π§ Handler: handleMyPageRoute
- Personal dashboard for job seekers
- Shows user-specific content and recommendations
- Displays personalized job matches
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user dataisEmailNotVerifiedRedirect
- Redirects if email not verifiedisSignUpWizardNotCompletedRedirect
- Redirects if profile incomplete
πΌ Job/Position Routesβ
Positions Listβ
π URL: /positions
π Current Page: positions_list
π§ Handler: handleProductsListRoute
- Fetches paginated list of all job positions
- Displays available opportunities
- Loads position pagination data
β
Validators: scrollTo
(scroll to top)
Positions Filterβ
π URL: /positions/filter
π Current Page: positions_filter
π§ Handler: handleProductsFilterRoute
- Advanced filtering interface for positions
- Supports filtering by categories, skills, location
- Loads filtered results with pagination
β
Validators: scrollTo
(scroll to top)
Position Detailsβ
π URL: /positions/:productId
π Current Page: position_show
π§ Handler: handleProductsDetailsRoute
- Shows detailed view of specific job position
- Displays job requirements, description, company info
- Enables application submission
β
Validators: scrollTo
(scroll to top)
π’ Organization Routesβ
Organization Detailsβ
π URL: /organization/:orgId
π Current Page: organization_show
π§ Handler: handleSingleOrganizationRoute
- Shows detailed organization profile
- Displays company information and culture
- Lists organization's available positions
β
Validators: scrollTo
(scroll to top)
Organization Positionsβ
π URL: /organization/:orgId/positions
π Current Page: organization_products_list
π§ Handler: handleOrganizationPositionsRoute
- Lists all positions from specific organization
- Filters positions by company
- Shows company-specific job opportunities
β
Validators: scrollTo
(scroll to top)
π Application Routesβ
Applications Listβ
π URL: /job-applications
π Current Page: orders
π§ Handler: handleOrderListRoute
- Shows user's job application history
- Tracks application status and progress
- Displays application timeline and updates
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user dataisEmailNotVerifiedRedirect
- Redirects if email not verifiedisSignUpWizardNotCompletedRedirect
- Redirects if profile incomplete
π€ Profile Routesβ
User Profileβ
π URL: /profile
π Current Page: user_update
π§ Handler: handleUserUpdateRoute
- User profile editing interface
- Updates personal information and skills
- Manages professional profile data
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
π¬ Messaging Routesβ
Topics Listβ
π URL: /messages/topics
π Current Page: topics_list
π§ Handler: handleTopicsRoute
- Lists all conversation topics/threads
- Shows messaging overview
- Displays unread message counts
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Topic Messagesβ
π URL: /messages/topics/:topicId
π Current Page: messages_list
π§ Handler: handleTopicMessagesRoute
- Shows messages within specific topic/thread
- Enables real-time messaging
- Displays conversation history
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
βοΈ Settings Routesβ
Main Settingsβ
π URL: /settings
π Current Page: user_settings
π§ Handler: handleSettingsRoute
- User account settings and preferences
- Profile management interface
- Privacy and notification controls
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Change Emailβ
π URL: /settings/change-email
π Current Page: change_email_settings
π§ Handler: handleSettingsChangeEmailRoute
- Email address update form
- Initiates email verification process
- Handles email change workflow
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Change Passwordβ
π URL: /settings/change-password
π Current Page: change_password_settings
π§ Handler: handleSettingsChangePasswordRoute
- Secure password update interface
- Validates current password
- Implements password security requirements
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Deactivate Accountβ
π URL: /settings/deactivate-account
π Current Page: deactivate_account
π§ Handler: handleSettingsDeactivateAccountRoute
- Account deactivation form
- Provides account closure options
- Handles data retention preferences
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Deactivate Account Successβ
π URL: /settings/deactivate-account-success
π Current Page: deactivate_account_success
π§ Handler: handleSettingsDeactivateAccountSuccessRoute
- Confirmation page for account deactivation
- Provides final account closure confirmation
- Shows next steps after deactivation
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
Verify Email Change Successβ
π URL: /settings/verify-change-email-success/:verifyChangeEmailToken
π Current Page: verify_change_email_success
π§ Handler: handleSettingsVerifyChangeEmailSuccessRoute
- Confirms email address change
- Processes email verification tokens
- Updates user email verification status
β Validators:
isUserLoggedIn
- Validates authenticationupdateLoggedInUser
- Refreshes current user data
π Password Reset Routesβ
Request Password Resetβ
π URL: /reset-password-request
π Current Page: reset_password_request
π§ Handler: handleResetPasswordRequestRoute
- Password reset request form
- Initiates password recovery email
- Validates user account existence
β Validators: None (public route)
Submit New Passwordβ
π URL: /reset-password-submit/:resetPasswordToken
π Current Page: reset_password_submit
π§ Handler: handleResetPasswordSubmitRoute
- New password submission form
- Validates reset tokens from URL
- Processes password reset completion
β
Validators: scrollTo
(scroll to top)
Password Reset Successβ
π URL: /reset-password-success
π Current Page: reset_password_success
π§ Handler: handleResetPasswordSuccessRoute
- Password reset confirmation page
- Provides login redirect options
- Clears reset session data
β
Validators: scrollTo
(scroll to top)
π§ Validator Functions Referenceβ
Validator | Purpose |
---|---|
isUserLoggedIn | β Validates authentication, redirects to login if needed |
isUserNotLoggedIn | βͺοΈ Redirects authenticated users from login/signup pages |
updateLoggedInUser | π Refreshes current user data from API |
isEmailNotVerifiedRedirect | π§ Redirects users with unverified emails |
isSignUpWizardNotCompletedRedirect | π§ββοΈ Redirects users with incomplete profiles |
clearFilters | π§Ή Resets search and filter states |
scrollTo | β¬οΈ Scrolls page to top on route navigation |
π¨ Route Flow Patternβ
π URL Request β β
Validators β π§ Handler β π State Update β π― Page Render
Demand routes are optimized for job seekers with additional profile completion checks and email verification requirements.