CareerArcade is a full-stack job portal application designed to connect job seekers with employers. It supports role-based functionality for Job Seekers, Employers, and Admins, offering essential features like user registration, job postings, job applications, and more.
- ASP.NET Core Web API
- Entity Framework Core
- SQL Server
- JWT Authentication
- React.js
- React Router
- Context API
- Axios
- react-data-table-component
Controllers/β API endpointsModels/β Entity modelsDTOs/β Data Transfer ObjectsData/β DbContext and database configRepositories/β Data access layerServices/β Business logicHelpers/β JWT generation, role handlingProgram.cs/Startup.csβ App configuration
src/pages/β Pages by role: Jobseeker, Employer, Adminsrc/components/β Reusable componentssrc/context/β Auth context with role handlingsrc/routes/β Protected routes by rolesrc/services/β API callssrc/App.jsβ Routing setup
- Register/Login for all roles (Job Seeker, Employer, Admin)
- JWT-based authentication
- Role-based protected routes
- View job listings
- Search and sort jobs
- Apply for jobs
- View applied jobs
- Post new jobs
- Manage posted jobs
- View applicants for jobs
- View all users
- Manage job postings and users
- Moderate content
-
Navigate to the backend directory:
cd CareerArcade.API -
Restore NuGet packages:
dotnet restore
-
Update the connection string in
appsettings.json:"ConnectionStrings": { "DefaultConnection": "Server=.;Database=CareerArcadeDb;Trusted_Connection=True;" }
-
Run the application:
dotnet run
-
Navigate to the frontend directory:
cd careerarcade-frontend -
Install dependencies:
npm install
-
Start the development server:
npm start
- Auth token stored in
localStorage - Roles extracted from JWT and stored in Context
- Routes rendered conditionally based on roles
- Separate dashboard pages per user type
POST /api/auth/registerPOST /api/auth/login
GET /api/jobsβ List jobsPOST /api/jobsβ Create job (Employer only)GET /api/jobs/{id}β Job details
POST /api/applyβ Apply to a jobGET /api/applicationsβ List user's applications
- π¨βπ» Shreyansh Srivastava β Full Stack Developer
- π« Contact: sheryanshsri1807@gmail.com
This project is licensed under the MIT License.
- Resume upload and parsing
- Chat between employer and applicant
- Job alerts and email notifications
- Admin analytics dashboard


