Skip to content

About

Coursenva helps learners discover free online courses using AI, generate personalized career roadmaps, export study guides, and receive real-time learning assistance from trusted platform.

Topics

Resources

Stars

14 stars

Watchers

0 watching

Forks

Repository files navigation

Coursenva Logo

Coursenva

AI-Powered Course Search, Career Roadmaps & Learning Assistant

Next.js React TypeScript Tailwind CSS License


System Overview

Coursenva helps learners discover top free online courses across the web, generate step-by-step career roadmaps, export study guides as PDFs, and get real-time guidance from an interactive AI assistant.


Application Video Walkthrough

freecourse.mp4

Demonstration of natural language course discovery, AI roadmap generation, multi-page PDF export, and streaming assistant interaction.


Technology Stack

Frontend Architecture

  • Framework: Next.js 16.2.12 (App Router, Turbopack)
  • UI Library: React 19.2.8
  • Language: TypeScript 5.8 (Strict Mode Enabled)
  • Styling: Tailwind CSS 4.0 (@theme variables, CSS module isolation)
  • Icons: Lucide React 0.546.0

Server & AI Infrastructure

  • LLM Integration: Vercel AI SDK (ai), @ai-sdk/google, @mistralai/mistralai
  • Search Ingestion: @tavily/core, Google Serper REST API
  • Document Generation: jspdf, html2canvas

Quality Assurance & Tooling

  • Code Formatting & Linting: Prettier, ESLint 9 (Flat Config), @typescript-eslint
  • Git Hooks: Husky 9, lint-staged

Getting Started

Prerequisites

  • Node.js: v20.9.0 or higher
  • Package Manager: npm v10.0.0+ or bun v1.1.0+
  • API Keys: At least one LLM key (MISTRAL_API_KEY or GEMINI_API_KEY) and one search key (TAVILY_API_KEY or SERPER_API_KEY)

Installation & Setup

  1. Clone the Repository:

    git clone https://github.com/kuldeeprajput-dev/ai-course-finder.git
    cd ai-course-finder
  2. Install Dependencies:

    npm install
  3. Configure Environment Variables: Copy the template file to .env.local:

    cp .env.example .env.local
  4. Launch Local Development Server:

    npm run dev

    Access the workspace at http://localhost:3000.


Environment Configuration

Configure server-side environment variables inside .env.local:

# Generative AI Providers
GEMINI_API_KEY=your_gemini_api_key_here
MISTRAL_API_KEY=your_mistral_api_key_here

# Web Search Grounding Providers
TAVILY_API_KEY=your_tavily_api_key_here
SERPER_API_KEY=your_serper_api_key_here

Key Resolution & Fallback Matrix

Variable Scope Primary Purpose Fallback Behavior
GEMINI_API_KEY Server-only Primary course discovery and roadmap generation. Falls back to MISTRAL_API_KEY if key is unconfigured or rate-limited.
MISTRAL_API_KEY Server-only Primary streaming chat assistant and secondary search generator. Required for /api/chat streaming functionality.
TAVILY_API_KEY Server-only Primary web search grounding and course recommendation provider. Falls back to SERPER_API_KEY if search query fails.
SERPER_API_KEY Server-only Secondary Google Search API fallback provider. Utilized automatically when Tavily quota is exhausted.

License

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


Support & Feedback

If you find this project helpful, please consider giving it a ⭐ star on GitHub!

About

Coursenva helps learners discover free online courses using AI, generate personalized career roadmaps, export study guides, and receive real-time learning assistance from trusted platform.

Topics

Resources

Stars

14 stars

Watchers

0 watching

Forks

Contributors

Languages