Skip to content

rudraymehra/InterviewLytics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

InterviewLytics Frontend

A complete, fully functional frontend for the InterviewLytics AI-powered hiring platform, built according to detailed specifications with Next.js, TypeScript, Tailwind CSS, and Chart.js.

✨ Features

🏠 Landing Page

  • Modern hero section with animated elements
  • Features showcase with AI-powered capabilities
  • How it works process explanation
  • User testimonials and success stories
  • Pricing plans (Free, Pro, Enterprise)
  • Responsive design for all devices

πŸ” Authentication System

  • Separate login pages for candidates and recruiters
  • Dedicated signup forms with role selection
  • Form validation and error handling
  • Password visibility toggle
  • Social login options (Google, Twitter)
  • Secure authentication context

πŸ‘” Recruiter Dashboard

  • Dashboard with key metrics and analytics
  • Jobs Management - Create, edit, delete job postings
  • Applicants Management - Review and manage candidates
  • Analytics - Charts and insights with Chart.js
  • Profile Settings - Account management

πŸ‘€ Candidate Dashboard

  • Dashboard with application tracking
  • Applications - View all job applications
  • AI Interview - Chat-style interview interface
  • Feedback - Detailed performance analysis with radar charts
  • Profile - Resume upload and account settings

πŸ“Š Analytics & Visualizations

  • Bar charts for application trends
  • Radar charts for skills assessment
  • Real-time metrics and KPIs
  • Interactive dashboards

πŸ›  Tech Stack

  • Framework: Next.js 14 with App Router
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Charts: Chart.js with react-chartjs-2
  • Animations: Framer Motion
  • Icons: Lucide React
  • Forms: React Hook Form
  • Notifications: React Hot Toast
  • State Management: Zustand + React Context

πŸ“ Project Structure

Frontend/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ globals.css              # Global styles
β”‚   β”œβ”€β”€ layout.tsx               # Root layout with providers
β”‚   β”œβ”€β”€ page.tsx                 # Landing page
β”‚   β”œβ”€β”€ about/page.tsx           # About page
β”‚   β”œβ”€β”€ contact/page.tsx         # Contact page
β”‚   β”œβ”€β”€ pricing/page.tsx         # Pricing page
β”‚   β”œβ”€β”€ features/page.tsx        # Features page
β”‚   β”œβ”€β”€ login-candidate/page.tsx # Candidate login
β”‚   β”œβ”€β”€ login-recruiter/page.tsx # Recruiter login
β”‚   β”œβ”€β”€ signup-candidate/page.tsx # Candidate signup
β”‚   β”œβ”€β”€ signup-recruiter/page.tsx # Recruiter signup
β”‚   β”œβ”€β”€ recruiter/
β”‚   β”‚   β”œβ”€β”€ layout.tsx           # Recruiter layout with sidebar
β”‚   β”‚   β”œβ”€β”€ dashboard/page.tsx   # Recruiter dashboard
β”‚   β”‚   β”œβ”€β”€ jobs/page.tsx        # Jobs management
β”‚   β”‚   β”œβ”€β”€ applicants/page.tsx  # Applicants management
β”‚   β”‚   β”œβ”€β”€ analytics/page.tsx   # Analytics dashboard
β”‚   β”‚   └── profile/page.tsx     # Profile settings
β”‚   └── candidate/
β”‚       β”œβ”€β”€ layout.tsx           # Candidate layout with sidebar
β”‚       β”œβ”€β”€ dashboard/page.tsx   # Candidate dashboard
β”‚       β”œβ”€β”€ applications/page.tsx # Applications tracking
β”‚       β”œβ”€β”€ interview/page.tsx   # AI interview interface
β”‚       β”œβ”€β”€ feedback/page.tsx    # Performance feedback
β”‚       └── profile/page.tsx     # Profile settings
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ Navbar.tsx               # Main navigation
β”‚   β”œβ”€β”€ Sidebar.tsx              # Dashboard sidebar
β”‚   β”œβ”€β”€ ui/                      # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ Button.tsx
β”‚   β”‚   β”œβ”€β”€ Card.tsx
β”‚   β”‚   β”œβ”€β”€ Modal.tsx
β”‚   β”‚   └── FormInput.tsx
β”‚   β”œβ”€β”€ charts/                  # Chart components
β”‚   β”‚   β”œβ”€β”€ BarChart.tsx
β”‚   β”‚   └── RadarChart.tsx
β”‚   └── [other components]
β”œβ”€β”€ context/
β”‚   └── AuthContext.tsx          # Authentication context
β”œβ”€β”€ utils/
β”‚   └── apiClient.ts             # Mock API client
└── lib/
    └── utils.ts                 # Utility functions

πŸš€ Getting Started

Prerequisites

  • Node.js 18+
  • npm or yarn

Installation

  1. Navigate to the frontend directory:
cd Frontend
  1. Install dependencies:
npm install
  1. Run the development server:
npm run dev
  1. Open your browser: Visit http://localhost:3000

🎯 Key Features Implemented

βœ… Complete Page Structure

  • Landing page with all sections
  • Separate auth pages for candidates/recruiters
  • Role-based dashboards with sidebars
  • All specified pages and functionality

βœ… Authentication System

  • Role-based access control
  • Protected routes for dashboards
  • Login/signup forms with validation
  • User context and state management

βœ… Dashboard Functionality

  • Recruiter: Jobs, applicants, analytics, profile
  • Candidate: Applications, interview, feedback, profile
  • Real-time data with mock API
  • Interactive charts and visualizations

βœ… UI/UX Components

  • Reusable component library
  • Responsive design
  • Modern animations
  • Toast notifications
  • Modal dialogs
  • Form components

βœ… Charts & Analytics

  • Bar charts for trends
  • Radar charts for skills
  • Interactive dashboards
  • Real-time metrics

πŸ”§ Available Scripts

# Development
npm run dev          # Start development server
npm run build        # Build for production
npm run start        # Start production server
npm run lint         # Run ESLint

πŸ“± Responsive Design

  • Mobile-first approach
  • Tablet and desktop optimized
  • Touch-friendly interfaces
  • Accessible navigation

🎨 Customization

Colors

Update tailwind.config.js:

colors: {
  primary: { /* Your primary colors */ },
  secondary: { /* Your secondary colors */ }
}

Components

All components are modular and easily customizable in the components/ directory.

πŸš€ Deployment

Vercel (Recommended)

  1. Push to GitHub
  2. Connect to Vercel
  3. Deploy automatically

Other Platforms

npm run build
npm run start

πŸ“Š Mock Data

The application includes comprehensive mock data for:

  • Job postings and applications
  • User profiles and authentication
  • Interview messages and feedback
  • Analytics and metrics

πŸ” Security Features

  • Role-based access control
  • Protected routes
  • Form validation
  • Secure authentication flow

πŸ“ˆ Performance

  • Optimized for speed and SEO
  • Lazy loading for components
  • Efficient state management
  • Minimal bundle size

About

A complete, fully functional frontend for the InterviewLytics AI-powered hiring platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages