Project Title: Jobify
Project Overview
Jobify is a web application for managing companies and job listings, primarily aimed at admins. The application includes features for role-based authentication, AI-powered text generation, pagination, filtering, sorting, and state management using the MERN stack (MongoDB, Express.js, React, Node.js).
Objectives
- Role-Based Authentication: Implement role-based access control for admin and super-admin users using token-based authentication.
- User Management: Allow the super-admin to manage (create, update, delete) other admin accounts.
- Company & Job Management: Enable admins to manage companies and job listings with advanced filtering, search, and sorting.
- AI Text Generation: Add AI-based features for generating job descriptions or candidate outreach messages.
- Pagination & Optimization: Implement pagination with optimized queries and lazy loading.
- File Uploads: Enable file uploads for company logos and job descriptions.
Technical Requirements
Frontend
- Framework: React.js
- State Management: Redux (with middleware like redux-thunk or redux-saga)
- Routing: React Router
- UI Components:
- HTTP Client: Axios or Fetch API
- Performance: Lazy loading and code splitting
- AI Integration: Use a text generation API (e.g., OpenAI) for job descriptions/outreach messages