Skip to content

๐Ÿš€Streamline your entire recruitment workflow with TalentFlow. This intuitive platform helps your HR team manage job openings, track every candidate's ๐Ÿ‘ฅ journey, and gain powerful insights from a visual hiring pipeline ๐Ÿ“Š, to find and hire top talent, faster.

Notifications You must be signed in to change notification settings

Aayushman-Gupta/TALENTFLOW-A-MINI-HIRING-PLATFORM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

35 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒŸ TalentFlow โ€“ A Mini Hiring Platform

A front-end-only hiring management application built with React
Manage Jobs, Candidates, and Assessments with a professional, intuitive UI.
Powered by MSW (Mock Service Worker) + Dexie.js for persistence.


๐Ÿ“– Table of Contents

  1. Project Overview
  2. Core Philosophy
  3. Tech Stack & Frameworks
  4. Features
  5. Novel Features
  6. Setup & Installation
  7. Project Structure
  8. API Simulation
  9. Comparison with Requirements
  10. Future Enhancements
  11. Contributing
  12. License

๐Ÿš€ Project Overview

TalentFlow is a front-end-only hiring management platform.
It enables HR teams to manage the full hiring pipeline:

  • Posting job opportunities
  • Tracking candidates across stages
  • Evaluating them with job-specific assessments

๐Ÿ’ก Core Philosophy

  • 100% browser-based app (no backend required)
  • MSW simulates REST API endpoints
  • Dexie.js + IndexedDB for persistent local storage
  • Fully interactive, scalable, and production-ready front-end demo

๐Ÿ› ๏ธ Tech Stack & Frameworks Used

โš›๏ธ React.js

  • Why: Modern, component-based architecture that enables reusability and scalability.
  • How used:
    • Built UI components like JobCard, KanbanColumn, StatsCard
    • State management via useState, useEffect, useMemo, useCallback
    • Routing handled by react-router-dom

๐Ÿ›ก๏ธ MSW (Mock Service Worker)

  • Why: To simulate a real backend during development.
  • How used:
    • Intercepts fetch requests and provides mock responses
    • Introduces latency (200โ€“1200ms) and error rate (5โ€“10%) for resilience testing
    • Connected with Dexie to provide stateful API behavior

๐Ÿ—„๏ธ Dexie.js (IndexedDB wrapper)

  • Why: Persistent, client-side database with rich queries.
  • How used:
    • Stores jobs, candidates, applications, assessments
    • Provides schema versioning for evolving data models
    • Ensures persistence across sessions without backend

๐ŸŽญ Faker.js

  • Why: To generate realistic seed data for prototyping.
  • How used:
    • Auto-populates 25 jobs & 1000+ candidates on first load
    • Randomized applications for new job postings

๐ŸŽฏ dnd-kit

  • Why: Accessible, lightweight, and flexible drag-and-drop library.
  • How used:
    • Jobs Dashboard โ†’ Drag to reorder job cards
    • Kanban Board โ†’ Move candidates across stages

๐Ÿ“Š Recharts

  • Why: Declarative React-based charts for dashboards.
  • How used:
    • Bar chart: Candidate distribution across stages
    • Donut chart: Pending vs. Completed assessments

๐ŸŽจ Framer Motion

  • Why: Adds smooth, professional animations.
  • How used:
    • Animations for modals, transitions, and list reordering
    • Enhances perceived performance and polish

๐Ÿ’… Tailwind CSS

  • Why: Utility-first CSS framework for rapid UI development.
  • How used:
    • Consistent design system across all components
    • Responsive layouts and clean styling

โœจ Features

๐Ÿ“Š Jobs Dashboard (/dashboard)

  • Global Statistics Header (Total Jobs, Candidates, Applications, Hires)
  • Create New Job modal with validation
  • Auto-seeded applications for realism
  • Paginated & sortable job list
  • Search + filter by status
  • Drag-and-drop job reordering (saved in DB)

๐Ÿ“Œ Job Detail Page (/jobs/:jobId)

  • Multi-column dashboard layout
  • Candidate pipeline bar chart
  • Assessment stats donut chart
  • Action Panel: View Applications, Kanban, Build Assessment, Edit, Archive

๐Ÿ—‚๏ธ Kanban Board (/jobs/:jobId/kanban)

  • Stage-based columns (Applied โ†’ Screening โ†’ Tech โ†’ Offer โ†’ Hired/Rejected)
  • Drag-and-drop candidate cards
  • Visual indicators for assessments (Pending โณ, Submitted โœ…)
  • Real-time updates synced to Dexie

๐Ÿ‘ค Candidate Profile Page (/candidate/:candidateId)

  • Timeline of stage progression
  • Assessment timing tooltip (start, end, duration)
  • Assessment button enabled only in Tech Interview stage

๐Ÿ“ Assessment Module

  • Builder with multiple question types (MCQ, Text, Numeric, File Upload)
  • Live preview of assessment form
  • Validation: required fields, ranges, conditionals
  • Automated status updates:
    • Enter Tech stage โ†’ Pending assessment
    • Submit assessment โ†’ Status = Submitted

๐ŸŒŸ Novel Features

Beyond the required features, extra functionalities were implemented:

  • Assessment Lock (Critical Constraint 1)

    • Candidate cannot be moved out of Tech stage if assessment is pending
    • Prevents breaking workflow rules
  • No Backward Moves (Critical Constraint 2)

    • Candidates cannot be moved back to previous stages
    • Only exception: moving to "Rejected"
  • Automated Workflow Triggers

    • Entering Tech Interview stage โ†’ Creates pending assessment + starts timer
    • Assessment submission โ†’ Updates candidate & assessment tables instantly
  • Real-Time UI Sync

    • Assessment status updates instantly in UI without refresh
    • Kanban & Candidate Profile remain consistent
  • Advanced Dashboards

    • Data-rich statistics on dashboard & job detail page
  • UI/UX Polish

    • Smooth animations via Framer Motion
    • Tooltips for timelines & statuses
    • Consistent, professional Tailwind design system

โš™๏ธ Setup & Installation

# Clone repo
git clone https://github.com/Aayushman-Gupta/talentflow.git
cd talentflow

# Install dependencies
npm install

# Start development server
npm run dev

About

๐Ÿš€Streamline your entire recruitment workflow with TalentFlow. This intuitive platform helps your HR team manage job openings, track every candidate's ๐Ÿ‘ฅ journey, and gain powerful insights from a visual hiring pipeline ๐Ÿ“Š, to find and hire top talent, faster.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published