Skip to content

huzaifa-fullstack/eduvox-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

73 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ EduVox AI – AI-Powered Educational Voice Companion Platform

EduVox AI Next.js React TypeScript Tailwind CSS ShadCN UI Supabase Clerk Vapi AI OpenAI ElevenLabs Deepgram Sentry React Hook Form Radix UI Zod Lottie Lucide Svix Vercel JavaScript HTML5 CSS3 Node.js PostCSS ESLint GitHub Actions CI/CD Pipeline Speed Insights MIT License Project Status

🌐 Live Demo: Click here to visitsite

Deployed on Vercel


πŸ“‹ Overview

EduVox AI is a revolutionary AI-powered educational platform that creates personalized voice-based learning companions for students. It combines cutting-edge voice AI technology with educational expertise to deliver interactive, real-time learning sessions across multiple subjects.

Key highlights include:

  • Real-time voice conversations with AI tutors using advanced speech synthesis and recognition
  • Personalized AI companions for Mathematics, Science, Language, History, Coding, and Economics
  • Intelligent session management with progress tracking and conversation limits
  • Secure authentication and user data management with automatic cleanup
  • Modern, responsive UI built with Next.js 15, React 19, and Tailwind CSS 4
  • Scalable architecture with real-time database and webhook integrations

πŸ—οΈ Features

πŸ€– AI-Powered Voice Companions

  • Subject-Specific Tutors across 6 major academic areas
  • Real-time Voice Interaction with natural conversation flow
  • Personalized Learning Paths tailored to individual topics
  • Multiple Voice Options (Male/Female, Casual/Formal styles)
  • Dynamic Session Duration (1-60 minutes)

🎯 Educational Subjects

  • πŸ“Š Mathematics - Calculus, Algebra, Statistics, and more
  • πŸ”¬ Science - Physics, Chemistry, Biology concepts
  • πŸ“š Language - Literature, Grammar, Vocabulary building
  • πŸ›οΈ History - World events, Historical analysis
  • πŸ’» Coding - Programming concepts, Logic building
  • πŸ’° Economics - Market principles, Economic theory

🎨 Companion Customization

  • Custom Names with content filtering
  • Topic Specification with relevance validation
  • Voice Selection (ElevenLabs AI voices)
  • Teaching Style (Casual or Formal approach)
  • Session Duration control

πŸ“Š Smart Session Management

  • Conversation Limits (Free: 5/month, Premium: 50/month)
  • Session History tracking and analytics
  • Bookmark System for favorite companions
  • Popular Companions discovery
  • Recent Sessions quick access

πŸ” Authentication & Security

  • Clerk Authentication with OAuth support
  • Secure User Management with automatic data cleanup
  • Webhook Integration for account deletion handling
  • GDPR Compliant data processing
  • Real-time Error Tracking with Sentry

οΏ½ Performance Monitoring

  • Speed Insights β€” Real-time Core Web Vitals tracking
  • Performance Analytics β€” Page load and interaction metrics
  • User Experience Optimization β€” Data-driven performance improvements
  • Vercel Integration β€” Seamless monitoring dashboard

οΏ½πŸ“± Modern UX/UI

  • Responsive Design (Mobile-first approach)
  • Lottie Animations for enhanced user experience
  • Form Validation with real-time feedback
  • Accessibility optimized components
  • ShadCN UI Components β€” Beautiful, accessible, and customizable React UI elements

πŸ’» Technologies Used

Frontend Framework

Styling & UI Components

AI & Voice Technology

Backend & Database

Form Handling & Validation

Monitoring & Analytics

Development & Build Tools

  • Turbopack β€” Fast bundler for development and production
  • ESLint 9 β€” Code linting and quality assurance
  • PostCSS 4 β€” CSS post-processing

Web Technologies

DevOps & CI/CD


πŸ”„ CI/CD Pipeline

πŸš€ Automated Workflow

Our CI/CD pipeline ensures code quality, security, and reliable deployments:

Quality Checks βœ…

  • ESLint β€” Code style and best practices validation
  • TypeScript β€” Static type checking and compilation
  • Build Verification β€” Ensures production build succeeds
  • Dependency Audit β€” Security vulnerability scanning

Deployment Strategy 🌐

  • Production β€” Automatic deployment to eduvox-ai.vercel.app on main branch
  • Preview β€” Automatic preview deployments for pull requests
  • Rollback β€” Instant rollback capability for critical issues

Pipeline Triggers πŸ”„

  • Main Branch β†’ Production deployment with full quality checks
  • Pull Requests β†’ Preview deployment with code review
  • Security β†’ Automatic dependency updates and vulnerability alerts

Workflow Status πŸ“Š

βœ… Code Quality & Build Check (1m 6s)
βœ… Security & Dependency Check (34s)
βœ… Deploy to Vercel (1m 58s)
⏭️ Preview Deployment (PR only)

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ installed
  • npm or yarn package manager
  • Supabase account and project
  • Clerk account for authentication
  • Vapi AI account for voice features

Installation

  1. Clone the repository
git clone https://github.com/huzaifa-fullstack/eduvox-ai.git
cd eduvox-ai
  1. Install dependencies
npm install
  1. Environment Setup

Create a .env.local file with the following variables:

# Clerk Authentication
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_IN_FALLBACK_REDIRECT_URL=/
CLERK_WEBHOOK_SECRET=your_webhook_secret

# Supabase
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key

# Vapi AI Voice
NEXT_PUBLIC_VAPI_WEB_TOKEN=your_vapi_token

# Sentry Error Tracking
SENTRY_AUTH_TOKEN=your_sentry_token

# Newsletter (Optional)
BUTTONDOWN_API_KEY=your_buttondown_key
  1. Database Setup

Set up your Supabase database with the following tables:

  • companions - AI companion configurations
  • user_lifetime_stats - User statistics and limits
  • session_history - Learning session records
  • bookmarks - User bookmarked companions
  1. Start development server
npm run dev
  1. Open your browser
http://localhost:3000
  1. Build for production
npm run build
npm start

πŸ“Έ Screenshots

πŸ” Authentication Page

Sign In Page


🏠 Homepage - Popular Companions

Homepage


πŸ€– All Companions Discovery

Companions Page


πŸ“Š My Learning Journey

Learning Journey


πŸ› οΈ Companion Builder

Companion Creation


πŸŽ“ Voice Learning Session

Learning Session


πŸ’³ Subscription Plans

Subscription Page


πŸ”– Payment Gateway

Payment Gateway


πŸ“ˆ Companion Limit

Companion Limit


πŸ“… Monthly Limit

Monthly Limit


πŸŽ₯ Preview

Preview GIF


πŸ—„οΈ Database Schema

Companions Table

- id (uuid, primary key)
- name (text) - Companion name
- subject (text) - Academic subject
- topic (text) - Specific learning topic
- voice (text) - Voice type (male/female)
- style (text) - Teaching style (casual/formal)
- duration (integer) - Session duration in minutes
- author (text) - Creator user ID
- created_at (timestamp)

User Lifetime Stats Table

- user_id (text, primary key)
- conversations_count (integer) - Monthly conversation count
- created_at (timestamp)
- updated_at (timestamp)

Session History Table

- id (uuid, primary key)
- user_id (text) - User identifier
- companion_id (uuid) - Companion reference
- created_at (timestamp)

Bookmarks Table

- id (uuid, primary key)
- user_id (text) - User identifier
- companion_id (uuid) - Bookmarked companion
- created_at (timestamp)

🎨 Design System

Color Palette

  • Science: #E5D0FF (Purple tint)
  • Mathematics: #FFDA6E (Golden yellow)
  • Language: #BDE7FF (Sky blue)
  • Coding: #FFC8E4 (Pink tint)
  • History: #FFECC8 (Warm amber)
  • Economics: #C8FFDF (Mint green)

Component Architecture

  • Atomic Components - Reusable UI elements
  • Compound Components - Complex interactive features
  • Layout Components - Page structure and navigation
  • Form Components - Input validation and submission

Voice Configuration

voices = {
  male: {
    casual: "2BJW5coyhAzSr8STdHbE",
    formal: "c6SfcYrb2t09NHXiT80T",
  },
  female: {
    casual: "ZIlrSGI4jZqobxRKprJz",
    formal: "sarah",
  },
};

πŸ”’ Security & Privacy

Authentication Security

  • OAuth Integration with Clerk
  • Session Management with automatic token refresh
  • Route Protection for authenticated areas
  • Role-based Access Control

Data Protection

  • GDPR Compliant user data handling
  • Automatic Data Cleanup on account deletion
  • Webhook Security with signature verification
  • Environment Variable Protection

Content Safety

  • Input Validation with Zod schemas
  • Content Filtering for inappropriate material
  • Topic Relevance Validation
  • XSS Protection with TypeScript

Error Handling

  • Graceful Error Recovery
  • User-friendly Error Messages
  • Comprehensive Logging with Sentry
  • Webhook Failure Handling

πŸ“ˆ Performance Optimizations

Frontend Performance

  • React 19 Concurrent Features for smooth UI
  • Next.js App Router with optimized routing
  • Turbopack for fast development builds
  • Code Splitting at route level
  • Image Optimization with Next.js Image

Voice AI Optimization

  • Streaming Audio for real-time conversation
  • Voice Synthesis Caching
  • Efficient Transcription with Deepgram Nova-3
  • WebRTC for low-latency communication

Database Performance

  • Supabase Edge Functions for server-side logic
  • Real-time Subscriptions for live updates
  • Efficient Query Patterns
  • Connection Pooling

πŸ”„ Deployment & DevOps

Build Commands

npm run dev          # Development with Turbopack
npm run build        # Production build with Turbopack
npm run start        # Production server
npm run lint         # Code quality check

Deployment Platforms

  • Vercel (Recommended) - Optimized for Next.js
  • Netlify - Static site deployment
  • Railway - Full-stack deployment
  • Self-hosted - Docker container ready

Environment Configuration

  • Development - Hot reload with Turbopack
  • Staging - Preview deployments
  • Production - Optimized builds

🎯 AI Assistant Configuration

OpenAI GPT-4 Setup

model: {
  provider: "openai",
  model: "gpt-4",
  messages: [
    {
      role: "system",
      content: `You are a highly knowledgeable tutor teaching a real-time voice session with a student. Your goal is to teach the student about the topic and subject.

      Tutor Guidelines:
      - Stick to the given topic and subject
      - Keep conversation flowing smoothly
      - Check student understanding regularly
      - Break down complex topics into smaller parts
      - Keep responses short for voice conversation
      - No special characters in responses`
    }
  ]
}

Voice Configuration

voice: {
  provider: "11labs",
  voiceId: selectedVoiceId,
  stability: 0.5,
  similarityBoost: 0.75,
  useSpeakerBoost: true
}

Transcription Setup

transcriber: {
  provider: "deepgram",
  model: "nova-3",
  language: "en"
}

🚧 Future Enhancements

  • Multi-language Support - International education
  • Advanced Analytics - Learning progress tracking
  • Collaborative Learning - Group study sessions
  • Mobile App - iOS and Android applications
  • Offline Mode - Downloaded content access
  • Integration APIs - LMS and school platforms
  • Advanced AI Models - Subject-specific fine-tuning
  • Gamification - Points, badges, and leaderboards
  • Parent Dashboard - Progress monitoring for parents
  • Teacher Tools - Classroom management features

πŸ“Š Project Metrics

Codebase Statistics

  • Components: 25+ React components
  • Routes: 12 application routes
  • API Endpoints: 8 serverless functions
  • Database Tables: 4 core tables
  • Types: 30+ TypeScript interfaces
  • Lines of Code: 5,000+ (excluding node_modules)

Key Features Count

  • 6 Educational Subjects supported
  • 4 Voice Options (Male/Female Γ— Casual/Formal)
  • Real-time Voice Processing
  • Secure Authentication System
  • Comprehensive Form Validation
  • Responsive Design System
  • Error Tracking & Monitoring
  • Webhook Integration

πŸŽ“ Educational Impact

Learning Benefits

  • Interactive Voice Learning - More engaging than text
  • Personalized Tutoring - AI adapts to student needs
  • Accessible Education - Voice-based learning for all
  • Flexible Scheduling - Learn anytime, anywhere
  • Progress Tracking - Monitor learning journey

Academic Subjects Coverage

  • STEM Education - Math, Science, Coding
  • Humanities - Language, History
  • Social Sciences - Economics
  • Skill Development - Critical thinking, problem-solving

πŸ› οΈ Development Journey

Problem Identification

Traditional online learning lacks the personal touch and real-time interaction that makes education engaging. EduVox AI bridges this gap by providing AI-powered voice tutors that can adapt to individual learning styles and provide immediate feedback.

Solution Architecture

  • Modern web technologies for seamless user experience
  • Advanced AI integration for intelligent tutoring
  • Scalable cloud infrastructure for global accessibility
  • Security-first approach for student data protection

Technical Challenges Solved

  • Real-time voice processing with minimal latency
  • Intelligent topic validation to ensure educational relevance
  • Scalable user management with conversation limits
  • Secure webhook handling for data cleanup
  • Responsive design across all device types

🀝 Contributing

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

Development Workflow

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

Code Standards

  • TypeScript for type safety
  • ESLint for code quality
  • Prettier for code formatting
  • Conventional Commits for clear history

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


✍️ Author

Muhammad Huzaifa Karim
GitHub Profile


πŸ™ Acknowledgments

  • OpenAI for GPT-4 language model
  • ElevenLabs for voice synthesis technology
  • Deepgram for speech recognition
  • Vapi AI for voice AI platform
  • Supabase for backend infrastructure
  • Clerk for authentication services
  • Vercel for deployment platform

πŸ“¬ Contact

For questions, feedback, or support:


🌟 Show Your Support

If you found this project helpful, please consider:

  • ⭐ Starring the repository
  • πŸ› Reporting bugs
  • πŸ’‘ Suggesting new features
  • πŸ“’ Sharing with others

Β© 2025 Muhammad Huzaifa Karim

About

EduVox AI is an AI-powered educational voice companion that delivers real-time tutoring across subjects with GPT-4, voice synthesis, speech recognition, secure auth, and a modern Next.js UI.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors