Skip to content

An intelligent and comprehensive web application designed to revolutionize interview preparation and conduction. Powered by modern AI and collaborative tools, this platform helps candidates, mentors, and recruiters streamline the entire interview journey β€” from resume enhancement to real-time coding sessions.

License

Notifications You must be signed in to change notification settings

priyanshub18/interviewly

Repository files navigation

Interviewly

A comprehensive AI-powered interview preparation and hiring platform that connects candidates with interviewers through real-time collaboration, interactive assessments, and intelligent job matching.

Interviewly Platform Interviewly Banner

πŸš€ Features

For Candidates

  • AI-Powered Interview Preparation: Generate personalized study plans based on your skills, target position, and timeline
  • Interactive Quiz Platform: Test your knowledge with auto-generated quizzes tailored to your learning needs
  • Flashcard System: Create and manage custom flashcards with AI-generated answers and examples
  • Resume Builder: Create professional resumes with AI assistance and multiple templates
  • Job Board: Browse and apply to relevant job postings with integrated application tracking
  • Interview Scheduling: Schedule and manage mock interviews with real interviewers
  • Real-time Video Interviews: Conduct interviews with integrated code editor and collaborative tools
  • Performance Analytics: Track your progress with detailed performance metrics and insights
  • Application Tracking: Monitor your job applications with real-time status updates

For Interviewers/Employers

  • Candidate Dashboard: Review and manage candidate applications with comprehensive profiles
  • Job Posting Management: Create, edit, and manage job postings with detailed requirements
  • Interview Creation: Schedule interviews with candidates and assign coding problems
  • Problem Management: Create and manage custom coding problems for technical assessments
  • Real-time Interview Tools: Conduct interviews with live code editor, notes, and recording capabilities
  • Application Review System: Review applications, update status, and provide feedback
  • Email Notifications: Automated email notifications for application updates and interview scheduling
  • Activity Tracking: Monitor all platform activities with detailed notifications

Core Platform Features

  • Real-time Collaboration: Live code editing, shared notes, and synchronized interview sessions
  • AI Integration: Google Gemini API for intelligent question generation, study planning, and feedback
  • Video Conferencing: High-quality video calls with screen sharing and recording capabilities
  • Role-based Access Control: Separate interfaces for candidates and interviewers
  • Responsive Design: Seamless experience across desktop, tablet, and mobile devices
  • Email Notifications: Automated email system for scheduling and status updates
  • Activity Feed: Real-time notifications and activity tracking for all users

πŸ’» Tech Stack

Frontend

  • Framework: Next.js 14 with App Router
  • Language: TypeScript
  • UI Components: Custom React components with Tailwind CSS
  • State Management: Convex queries and mutations
  • Animations: Framer Motion
  • Icons: Lucide React

Backend

  • Database: Convex (real-time database with live queries)
  • Authentication: Clerk with JWT integration
  • API: Serverless functions and webhooks
  • Email Service: React Email + Resend
  • AI Integration: Google Gemini API
  • Video: Stream API for video conferencing

DevOps

  • Hosting: Vercel
  • Monitoring: Vercel Analytics
  • Version Control: Git

πŸ—οΈ Architecture

The application follows a modern architecture leveraging Next.js 14 app router:

  • Server Components: Optimized data fetching with React Server Components
  • Real-time Data: Synchronized state across clients using Convex
  • Authentication: Secure multi-provider auth through Clerk
  • API Layer: RESTful endpoints with serverless functions
  • Webhook Integration: Event-driven architecture for automated actions

πŸ“ Project Structure

interviewly/
β”œβ”€β”€ convex/                    # Convex database schema and functions
β”‚   β”œβ”€β”€ schema.ts             # Database schema definitions
β”‚   β”œβ”€β”€ auth.config.ts        # Authentication configuration
β”‚   β”œβ”€β”€ users.ts              # User management functions
β”‚   β”œβ”€β”€ interviews.ts         # Interview management
β”‚   β”œβ”€β”€ jobs.ts               # Job posting and applications
β”‚   β”œβ”€β”€ questions.ts          # Coding problems management
β”‚   β”œβ”€β”€ quizzes.ts            # Quiz system
β”‚   β”œβ”€β”€ flashcards.ts         # Flashcard system
β”‚   β”œβ”€β”€ activities.ts         # Activity tracking and notifications
β”‚   └── comments.ts           # Interview feedback system
β”œβ”€β”€ emails/                   # Email templates using React Email
β”‚   β”œβ”€β”€ interview-scheduling.tsx
β”‚   └── job-application-notification.tsx
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                  # Next.js app router
β”‚   β”‚   β”œβ”€β”€ (admin)/          # Admin/Interviewer routes
β”‚   β”‚   β”‚   β”œβ”€β”€ dashboard/    # Interviewer dashboard
β”‚   β”‚   β”‚   β”œβ”€β”€ post-job/     # Job posting interface
β”‚   β”‚   β”‚   β”œβ”€β”€ manage-jobs/  # Job management
β”‚   β”‚   β”‚   β”œβ”€β”€ create-problem/ # Problem creation
β”‚   β”‚   β”‚   β”œβ”€β”€ all-problems/ # Problem management
β”‚   β”‚   β”‚   β”œβ”€β”€ schedule/     # Interview scheduling
β”‚   β”‚   β”‚   └── admin_activities/ # Admin activity feed
β”‚   β”‚   β”œβ”€β”€ (root)/           # Main application routes
β”‚   β”‚   β”‚   β”œβ”€β”€ home/         # User dashboard
β”‚   β”‚   β”‚   β”œβ”€β”€ prepare-interview/ # AI study planning
β”‚   β”‚   β”‚   β”œβ”€β”€ quiz/         # Quiz system
β”‚   β”‚   β”‚   β”œβ”€β”€ flashcard/    # Flashcard management
β”‚   β”‚   β”‚   β”œβ”€β”€ make-resume/  # Resume builder
β”‚   β”‚   β”‚   β”œβ”€β”€ jobs/         # Job board
β”‚   β”‚   β”‚   β”œβ”€β”€ my-applications/ # Application tracking
β”‚   β”‚   β”‚   β”œβ”€β”€ meeting/      # Video interview rooms
β”‚   β”‚   β”‚   β”œβ”€β”€ recordings/   # Interview recordings
β”‚   β”‚   β”‚   └── activities/   # User activity feed
β”‚   β”‚   └── api/              # API routes
β”‚   β”œβ”€β”€ components/           # Global components
β”‚   β”‚   β”œβ”€β”€ ui/               # Core UI components
β”‚   β”‚   β”œβ”€β”€ landing/          # Landing page components
β”‚   β”‚   └── providers/        # Context providers
β”‚   β”œβ”€β”€ hooks/                # Custom React hooks
β”‚   β”œβ”€β”€ lib/                  # Utility functions
β”‚   └── constants/            # Application constants
└── public/                   # Static assets

πŸ”’ Authentication & Authorization

The application uses Clerk for authentication with role-based access control:

  • Multi-provider Auth: Email, social login, and SIWE (Sign in with Ethereum)
  • Role Management: Separate interfaces for candidates and interviewers
  • JWT Integration: Secure token-based authentication with Convex
  • Access Control: UI and database-level permission enforcement

πŸ”„ Real-time Features

Powered by Convex's real-time database:

  • Live Interview Sessions: Real-time video calls with code editor and notes
  • Collaborative Coding: Multiple users can edit code simultaneously
  • Instant Notifications: Real-time activity updates and status changes
  • Live Application Tracking: Real-time job application status updates
  • Synchronized Data: Automatic content updates across all connected devices

🧠 AI Integration

The platform leverages Google Gemini API for:

  • Study Plan Generation: Personalized learning paths based on skills gap analysis
  • Question Generation: AI-powered quiz and flashcard content creation
  • Resume Enhancement: Intelligent resume optimization suggestions
  • Interview Feedback: Automated performance analysis and recommendations
  • Smart Matching: AI-driven job-candidate matching

🎯 Key Workflows

Candidate Journey

  1. Sign Up & Profile Creation: Set up account with skills and experience
  2. AI Study Planning: Generate personalized preparation roadmap
  3. Practice & Learn: Use quizzes, flashcards, and coding problems
  4. Apply for Jobs: Browse job board and submit applications
  5. Interview Preparation: Schedule mock interviews and practice
  6. Track Progress: Monitor applications and performance analytics

Interviewer Journey

  1. Account Setup: Create interviewer profile and preferences
  2. Job Posting: Create detailed job listings with requirements
  3. Candidate Review: Review applications and shortlist candidates
  4. Interview Scheduling: Set up technical and behavioral interviews
  5. Conduct Interviews: Use integrated tools for comprehensive assessment
  6. Provide Feedback: Rate candidates and update application status

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ and npm/yarn
  • Clerk account for authentication
  • Convex account for database
  • Resend account for email services
  • Google Gemini API key for AI features
  • Stream API key for video conferencing

Installation

  1. Clone the repository

    git clone https://github.com/priyanshub18/interviewly.git
    cd interviewly
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Set up environment variables

    cp .env.example .env.local

    Fill in your API credentials:

    # Clerk Authentication
    NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
    CLERK_SECRET_KEY=your_clerk_secret_key
    
    # Convex Database
    NEXT_PUBLIC_CONVEX_URL=your_convex_deployment_url
    
    # Stream Video
    NEXT_PUBLIC_STREAM_API_KEY=your_stream_api_key
    STREAM_API_SECRET=your_stream_api_secret
    
    # Google Gemini AI
    GEMINI_API_KEY=your_gemini_api_key
    
    # Resend Email
    RESEND_API_KEY=your_resend_api_key
  4. Start the development server

    npm run dev
    # or
    yarn dev
  5. Initialize Convex

    npx convex dev

πŸ“Š Features in Detail

AI-Powered Study Planning

  • Personalized learning paths based on current skills vs. job requirements
  • Time-based study schedules with daily breakdowns
  • Skill gap analysis and targeted improvement recommendations
  • Adaptive learning based on quiz performance

Interactive Quiz System

  • Auto-generated quizzes from AI based on topics and difficulty
  • Multiple question types with detailed explanations
  • Performance tracking with analytics and progress visualization
  • Quiz history with retake capabilities and improvement tracking

Flashcard Management

  • Create custom flashcards with AI-generated answers
  • Categorize flashcards by topics and subjects
  • AI-powered answer generation with examples and explanations
  • Spaced repetition learning system

Resume Builder

  • Professional templates with AI enhancement suggestions
  • Real-time preview and editing capabilities
  • Export to PDF with high-quality formatting
  • AI-powered content optimization

Job Board & Applications

  • Comprehensive job listings with detailed requirements
  • Application tracking with real-time status updates
  • Cover letter management and resume upload
  • Email notifications for application status changes

Real-time Interview Platform

  • High-quality video conferencing with screen sharing
  • Integrated code editor with syntax highlighting
  • Collaborative notes and feedback system
  • Interview recording and playback capabilities
  • Problem assignment and real-time evaluation

Admin Dashboard

  • Comprehensive candidate management interface
  • Job posting creation and management tools
  • Interview scheduling and problem assignment
  • Application review and status management
  • Activity tracking and notification system

πŸ“± Responsive Design

The platform is fully responsive and optimized for:

  • Desktop: Full-featured experience with all tools
  • Tablet: Optimized layout for touch interactions
  • Mobile: Streamlined interface for on-the-go access

πŸ” Security Features

  • End-to-end encryption for sensitive user data
  • JWT-based authentication with secure token management
  • Role-based access control at UI and database levels
  • GDPR compliance for data handling and privacy
  • Secure API endpoints with proper validation

πŸ“§ Email System

Automated email notifications for:

  • Interview scheduling confirmations
  • Job application status updates
  • New application notifications for employers
  • Study plan reminders and progress updates

🎨 UI/UX Features

  • Modern Design: Clean, professional interface with dark/light themes
  • Smooth Animations: Framer Motion powered transitions and interactions
  • Intuitive Navigation: Role-based navigation with clear user flows
  • Accessibility: WCAG compliant design with keyboard navigation
  • Loading States: Comprehensive loading indicators and skeleton screens

πŸ“ License

MIT

πŸ‘₯ Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“§ Contact

For questions or support, please reach out to our team at priyanshub18.work@gmail.com or open an issue on GitHub.


Interviewly - Empowering candidates and interviewers with AI-driven interview preparation and hiring solutions.

About

An intelligent and comprehensive web application designed to revolutionize interview preparation and conduction. Powered by modern AI and collaborative tools, this platform helps candidates, mentors, and recruiters streamline the entire interview journey β€” from resume enhancement to real-time coding sessions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages