A robust, enterprise-grade full-stack Web Application designed to streamline the recruitment process, manage candidate CVs dynamically, and optimize candidate-to-job matching pipelines. Built as the final course project defense for the Itransition JavaScript Track.
- Live Application: https://cv-management-frontend.onrender.com
- GitHub Repository: https://github.com/Seam820/cv-management-system
- 🔐 Role-Based Access Control (RBAC): Distinct permissions and customized dashboards for Admin, Recruiter, and Candidate.
- ⚡ 'Almost Virtual' CV Generation Architecture: Maintains 3rd Normal Form (3NF) relational integrity by using lightweight junction records between Users and Positions instead of duplicating applicant data.
- 🧠 Dynamic Profile Compiler Engine: Real-time reduction of atomic data stored in
ProfileValuetables into unified JSON profile objects for seamless frontend rendering. - 🛡️ Concurrency & Optimistic Locking: Safe multi-client concurrent editing managed via application-level sequential version counters.
- 📜 Audit Trail System: Complete audit logging tracking status changes, candidate updates, and recruiter interactions with precise timestamps and user IDs.
- 🔒 JWT Authentication & Security: Secure token-based access with Axios interceptors and password hashing via
bcrypt.
- Framework: React.js (Vite)
- Styling: Tailwind CSS
- HTTP Client: Axios
- Icons: Lucide React / React Icons
- Runtime: Node.js
- Framework: Express.js
- Database & ORM: PostgreSQL + Prisma ORM
- Authentication: JSON Web Tokens (JWT) & bcrypt
- Host: Render (Static Site for Frontend, Web Service for Backend)
- Database Host: Render Cloud PostgreSQL
cv-management-system/
├── client/ # React Frontend
│ ├── src/
│ │ ├── components/ # Reusable UI Components
│ │ ├── pages/ # Protected Views & Dashboards
│ │ ├── services/ # Axios API Calls & Interceptors
│ │ └── App.jsx
│ └── package.json
│
├── server/ # Express Backend API
│ ├── prisma/ # Schema definitions & migrations
│ ├── controllers/ # Business logic & compiler engines
│ ├── middleware/ # Auth & RBAC validation
│ ├── routes/ # RESTful API endpoints
│ └── package.json
│
└── README.md