{"id":31663599,"url":"https://github.com/aryprogrammer/edubox","last_synced_at":"2025-10-07T20:06:12.590Z","repository":{"id":314185288,"uuid":"1054437060","full_name":"ARYPROGRAMMER/EduBox","owner":"ARYPROGRAMMER","description":"This AI powered nextjs application is your ultimate solution to becoming better at managing student life. It leverages convex, gemini and kendo ui to make your personalised space. I found my student life unbalanced so making sure you can avoid that.","archived":false,"fork":false,"pushed_at":"2025-09-28T12:51:50.000Z","size":15293,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-28T14:45:08.277Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://edubox-ai.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ARYPROGRAMMER.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-10T20:46:14.000Z","updated_at":"2025-09-28T12:51:53.000Z","dependencies_parsed_at":"2025-09-11T04:25:54.180Z","dependency_job_id":"7819eb8b-2a3d-4653-921e-a68ee4fbe642","html_url":"https://github.com/ARYPROGRAMMER/EduBox","commit_stats":null,"previous_names":["aryprogrammer/edubox"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ARYPROGRAMMER/EduBox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARYPROGRAMMER%2FEduBox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARYPROGRAMMER%2FEduBox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARYPROGRAMMER%2FEduBox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARYPROGRAMMER%2FEduBox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ARYPROGRAMMER","download_url":"https://codeload.github.com/ARYPROGRAMMER/EduBox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARYPROGRAMMER%2FEduBox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278838434,"owners_count":26054720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-07T20:02:23.553Z","updated_at":"2025-10-07T20:06:12.585Z","avatar_url":"https://github.com/ARYPROGRAMMER.png","language":"TypeScript","readme":"**UPDATE: MOST OF THE SERVICES USED MIGHT HAVE STOPPED WORKING IN THE DEPLOYMENT DUE TO TRIAL LIMITS. PLEASE CHECK THE DEMO VIDEO TO SEE THE FUNCTIONALITY OR DEPLOY YOUR OWN INSTANCE.**\n\n![EduBox](https://socialify.git.ci/ARYPROGRAMMER/EduBox/image?font=KoHo\u0026forks=1\u0026issues=1\u0026language=1\u0026name=1\u0026owner=1\u0026pattern=Floating+Cogs\u0026stargazers=1\u0026theme=Dark)\n\n---\n\n\u003cdiv align=\"center\" style=\"margin-top: 12px;\"\u003e\n   \u003cimg src=\"frontend/public/logo-text.png\" alt=\"EduBox\" width=\"300\" /\u003e\n   \u003cp style=\"margin-top: 0; color: #555;\"\u003eYour intelligent student hub — notes, planner, campus life, and an AI assistant in one app.\u003c/p\u003e\n\n   \u003cdiv style=\"display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;\"\u003e\n      \u003c!-- Row 1: core tech --\u003e\n      \u003ca href=\"https://nextjs.org/\" aria-label=\"Next.js\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Next.js-15.5.2-black?style=for-the-badge\u0026logo=next.js\u0026logoColor=white\" alt=\"Next.js\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://reactjs.org/\" aria-label=\"React\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/React-19.1.0-61DAFB?style=for-the-badge\u0026logo=react\u0026logoColor=black\" alt=\"React\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://typescriptlang.org/\" aria-label=\"TypeScript\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/TypeScript-5.5.4-3178C6?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://tailwindcss.com/\" aria-label=\"Tailwind CSS\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Tailwind_CSS-3.4.17-38B2AC?style=for-the-badge\u0026logo=tailwind-css\u0026logoColor=white\" alt=\"Tailwind CSS\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://clerk.com/\" aria-label=\"Clerk\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Clerk-Authentication-6C47FF?style=for-the-badge\u0026logo=clerk\u0026logoColor=white\" alt=\"Clerk\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://edubox-ai.vercel.app/\" aria-label=\"Live Demo\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Live_Demo-Visit-blue?style=for-the-badge\u0026logo=vercel\u0026logoColor=white\" alt=\"Live Demo\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"LICENSE\" aria-label=\"License\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/License-MIT-green.svg?style=for-the-badge\" alt=\"License\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://www.youtube.com/embed/td5qevnAoec?si=EHguDAe2pqFXV-FZ\" aria-label=\"Demo Video Comprehensive Latest\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Demo1-Video-red?style=for-the-badge\u0026logo=youtube\" alt=\"Demo Video Comprehensive Latest\" /\u003e\n      \u003c/a\u003e\n      \u003ca href=\"https://www.youtube.com/embed/DkRr0VcmkHc?si=2MMlks4W9_mvXWRF\" aria-label=\"Demo Video Old\"\u003e\n         \u003cimg src=\"https://img.shields.io/badge/Demo2-Video-red?style=for-the-badge\u0026logo=youtube\" alt=\"Demo Video Old\" /\u003e\n      \u003c/a\u003e\n\n   \u003c/div\u003e\n\u003c/div\u003e\n\u003c/div\u003e\n\n---\n\n## 🎓 About EduBox\n\n**EduBox** is your intelligent student hub that organizes notes, schedules, assignments, and campus life in one place. Powered by AI, it streamlines your academic journey with smart organization, intelligent planning, and seamless campus life integration.\n\n## ✨ Features\n\n- **🗂️ Smart File Management** - AI-powered organization and semantic search\n- **📅 Intelligent Planner** - Never miss deadlines with smart scheduling\n- **🏫 Campus Life Hub** - Stay connected with clubs, events, and dining\n- **🤖 AI Assistant** - Get instant answers about your academic life\n- **📊 Analytics Dashboard** - Track your academic progress\n\n---\n\n## 🎓 About\n\nEduBox is an intelligent student hub that organizes notes, schedules, assignments, and campus life in one place. It uses AI to help with organization, planning, and finding what you need quickly.\n\n## 🏗️ Architecture\n\n```mermaid\ngraph TB\n    %% User Interface Layer\n    subgraph \"User Interface\"\n        UI[Next.js Frontend\u003cbr/\u003eReact + TypeScript + Tailwind]\n        DASH[Dashboard Components\u003cbr/\u003ePlanner, File Hub, Campus Life]\n        CHAT[AI Chat Interface\u003cbr/\u003eCopilotKit]\n        SEARCH[Global Search\u003cbr/\u003eNuclia RAG]\n        IMPORT[Data Import/Export\u003cbr/\u003eCSV, JSON, PDF]\n    end\n\n    %% Application Layer\n    subgraph \"Application Logic\"\n        CONVEX[Convex Functions\u003cbr/\u003eServerless Backend]\n        AUTH[Authentication\u003cbr/\u003eClerk]\n        BILLING[Billing \u0026 Feature Gates\u003cbr/\u003eSchematic]\n        ANALYTICS[Usage Analytics\u003cbr/\u003eVercel Analytics]\n    end\n\n    %% Data Layer\n    subgraph \"Data Storage\"\n        DB[(Convex Database\u003cbr/\u003eReal-time DB)]\n        FILES[File Storage\u003cbr/\u003eCloud Storage]\n        KB[(Nuclia Knowledge Base\u003cbr/\u003eDocument Processing)]\n    end\n\n    %% AI \u0026 ML Services\n    subgraph \"AI Services\"\n        GEMINI[Google Gemini\u003cbr/\u003eLLM via AI SDK]\n        GROQ[Groq\u003cbr/\u003eFast Inference]\n        COPILOT[CopilotKit Runtime\u003cbr/\u003eAI Actions \u0026 Chat]\n        NUCLIARAG[Nuclia RAG\u003cbr/\u003eRetrieval-Augmented Generation]\n    end\n\n    %% Backend Services\n    subgraph \"Backend Services\"\n        SYNC[Nuclia Sync Service\u003cbr/\u003eNode.js Backend\u003cbr/\u003eDocument Processing]\n        PDFPROCESS[PDF Processing\u003cbr/\u003eText Extraction]\n        SCHEDULEOPT[Schedule Optimization\u003cbr/\u003eAI-powered Planning]\n    end\n\n    %% External Integrations (Planned)\n    subgraph \"FUTURE SCOPE\"\n        CALENDAR[Google Calendar\u003cbr/\u003eSync UI Ready]\n        YOUTUBE[YouTube API\u003cbr/\u003eVideo Integration UI Ready]\n        OUTLOOK[Microsoft Outlook\u003cbr/\u003eEmail \u0026 Calendar]\n        DRIVE[Google Drive\u003cbr/\u003eFile Sync]\n        ZOOM[Zoom\u003cbr/\u003eMeeting Integration]\n    end\n\n    %% Connections\n    UI --\u003e CONVEX\n    UI --\u003e AUTH\n    UI --\u003e BILLING\n    UI --\u003e COPILOT\n    UI --\u003e SEARCH\n    UI --\u003e ANALYTICS\n\n    CONVEX --\u003e DB\n    CONVEX --\u003e FILES\n\n    CHAT --\u003e COPILOT\n    COPILOT --\u003e GEMINI\n    COPILOT --\u003e GROQ\n\n    SEARCH --\u003e NUCLIARAG\n    NUCLIARAG --\u003e KB\n    NUCLIARAG --\u003e SYNC\n\n    IMPORT --\u003e PDFPROCESS\n    DASH --\u003e SCHEDULEOPT\n\n    %% Planned connections (dashed)\n    DASH -.-\u003e CALENDAR\n    DASH -.-\u003e YOUTUBE\n    DASH -.-\u003e OUTLOOK\n    DASH -.-\u003e DRIVE\n    DASH -.-\u003e ZOOM\n\n    %% Styling\n    classDef frontend fill:#e1f5fe\n    classDef backend fill:#f3e5f5\n    classDef data fill:#e8f5e8\n    classDef ai fill:#fff3e0\n    classDef external fill:#fafafa\n    classDef planned fill:#ffebee\n\n    class UI,DASH,CHAT,SEARCH,IMPORT frontend\n    class CONVEX,AUTH,BILLING,ANALYTICS backend\n    class DB,FILES,KB data\n    class GEMINI,GROQ,COPILOT,NUCLIARAG ai\n    class SYNC,PDFPROCESS,SCHEDULEOPT external\n    class CALENDAR,YOUTUBE,OUTLOOK,DRIVE,ZOOM planned\n```\n\n### Architecture Overview\n\n**Frontend Layer:**\n\n- **Next.js 15** with App Router for modern React development\n- **TypeScript** for type safety and better DX\n- **Tailwind CSS + Shadcn/ui** for responsive, accessible UI\n- **Component Architecture:** Modular components for dashboard, chat, file management, data import/export\n\n**Backend Layer:**\n\n- **Convex** for real-time database and serverless functions\n- **Custom Nuclia Sync Service** for document processing and RAG\n- **Clerk** for authentication and user management\n- **Schematic** for billing and feature gating\n\n**AI \u0026 ML Layer:**\n\n- **CopilotKit** for AI chat interface and actions\n- **Google Gemini \u0026 Groq** for large language model inference via Vercel AI SDK\n- **Nuclia RAG** for retrieval-augmented generation and semantic search\n\n**Data Processing:**\n\n- **PDF Processing** for text extraction from uploaded documents\n- **Schedule Optimization** using AI for intelligent planning\n- **Data Import/Export** supporting multiple formats (CSV, JSON, PDF)\n\n**Planned Integrations:**\n\n- **Google Calendar** - Schedule synchronization (UI components ready)\n- **YouTube API** - Video content integration (API key configured)\n- **Microsoft Outlook** - Email and calendar integration\n- **Google Drive** - File synchronization\n- **Zoom** - Meeting scheduling and integration\n\n---\n\n## 🎥 Demo Video\n\n[![Demo Video Comprehensive Latest](https://img.shields.io/badge/Demo1-Video-red?style=for-the-badge\u0026logo=youtube)](https://www.youtube.com/embed/td5qevnAoec?si=EHguDAe2pqFXV-FZ)\n[![Demo Video Old](https://img.shields.io/badge/Demo2-Video-red?style=for-the-badge\u0026logo=youtube)](https://www.youtube.com/embed/DkRr0VcmkHc?si=2MMlks4W9_mvXWRF)\n\n---\n\n## 📸 Screenshots\n\n\u003cdetails\u003e\n\u003csummary\u003eClick to expand media\u003c/summary\u003e\n\n### Landing Page\n\n\u003cvideo width=\"800\" controls\u003e\n  \u003csource src=\"screenshots/f.mp4\" type=\"video/mp4\"\u003e\n  Your browser does not support the video tag.\n\u003c/video\u003e\n\n_Beautiful landing page with threejs component_\n![Landing Page](screenshots/landing.png)\n\n### 🏠 Dashboard \u0026 Overview\n\n_Main dashboard showing all features and quick access_\n![Dashboard Overview](screenshots/dashboardoverview.png)\n\n_Academic progress tracking and analytics_\n![Analytics Dashboard](screenshots/analytics.png)\n\n_User profile and settings_\n![Profile Page](screenshots/profile.png)\n\n### 🤖 AI Assistant \u0026 Chat\n\n_AI assistant home interface_\n![AI Chat Home](screenshots/aichathome.png)\n\n_Conversation with AI assistant having Tools_\n![AI Chat Session](screenshots/aichatsession.png)\n\n_AI-powered study assistance_\n![AI Study Assistant](screenshots/studynew.png)\n\n_AI content generation feature_\n![Content Generation](screenshots/contentgen.png)\n\n### 🔍 Search \u0026 RAG\n\n_Retrieval-augmented generation Usage_\n![RAG Demo](screenshots/ragdemo.jpeg)\n\n_Knowledge base and document processing in NucliaDB_\n![RAG Database](screenshots/ragdb.png)\n\n### 📅 Planner \u0026 Scheduling\n\n_Intelligent planning and schedule management_\n![Planner Hub](screenshots/plannernew.png)\n\n### 📁 File Management\n\n_File organization and management interface_\n![File Hub 1](screenshots/filehub1.png)\n\n_Advanced file operations and search_\n![File Hub 2](screenshots/filehub2.jpeg)\n\n_Data import and export functionality_\n![Import/Export](screenshots/importexp.png)\n\n### ⚙️ Backend Service\n\n_Nuclia Document synchronization service_\n![Backend Sync](screenshots/backendsync.png)\n\n_Convex Real-time database management_\n![Convex Database](screenshots/convex.png)\n\n_Schematic Billing and feature gating system_\n![Schematic Billing](screenshots/schematic.png)\n\n### 🔒 Additional Features\n\n_Premium feature access control Component_\n![Locked Feature](screenshots/locked.jpeg)\n\n\u003c/details\u003e\n\n---\n\n## 🚀 Quick start\n\n### Prerequisites\n\n- Node.js 18+ and pnpm\n- Git\n- Accounts for: Clerk, Convex, Schematic, Nuclia (Progress RAG), Google AI, Groq\n\n### Make Sure you know about each cloud service's dashboard setup and pricing. We do not discuss that here.\n\n### 1. Clone and Setup\n\n```powershell\ngit clone https://github.com/ARYPROGRAMMER/EduBox.git\ncd EduBox\n```\n\n### 2. Choose Your Setup\n\n#### Quick Setup (All Services)\n\nFor the complete development experience with all services running:\n\n```powershell\n# Install all dependencies\nnpm run setup\n\n# Configure environment variables\ncp frontend/env.example frontend/.env.local\n# Edit frontend/.env.local with your API keys\n\n# Start all services\nnpm run dev\n```\n\nThis will run:\n\n- Frontend (Next.js) on http://localhost:3000\n- Convex backend functions\n- Nuclia sync service on port 4000\n\n## 📋 Setup Options\n\n### Option 1: Backend Running Setup\n\nRun the Nuclia sync service for document processing and RAG functionality.\n\n```powershell\n# Navigate to backend\ncd backend/nuclia-sync\n\n# Install dependencies\nnpm install\n\n# Create environment file\ncp .env.example .env\n# Edit .env with your NUCLIA_API_KEY and other required variables\n\n# Start the sync service\nnpm start\n```\n\n**Environment Variables for Backend:**\n\n```env\nPORT=4000\nNUCLIA_API_KEY=your_nuclia_api_key\nNUCLIA_API_URL=https://nuclia.cloud/api\nNUCLIA_DEFAULT_KB=your_default_kb_id\n```\n\n### Option 2: Frontend Development Setup\n\nRun the Next.js application with all UI components and integrations.\n\n```powershell\n# Navigate to frontend\ncd frontend\n\n# Install dependencies\npnpm install\n\n# Create environment file\ncp env.example .env.local\n\n# Edit .env.local with all required API keys (see Environment Variables section below)\n\n# Start development server\npnpm dev\n```\n\n### Option 3: Full Stack AI Setup (CopilotKit + Nuclia RAG + Convex + Schematic + Clerk)\n\nComplete setup with AI chat, RAG search, database, billing, and authentication.\n\n```powershell\n# 1. Setup Convex (Database \u0026 Backend Functions)\ncd frontend\nnpx convex dev --once  # Initialize Convex project\n# Follow prompts to create/link your Convex project\n\n# 2. Setup Environment Variables\ncp env.example .env.local\n# Fill in all required variables (see below)\n\n# 3. Start Convex Backend\nnpx convex dev\n\n# 4. In another terminal, start Frontend\npnpm dev\n\n# 5. Start Backend Sync Service (in third terminal)\ncd ../backend/nuclia-sync\nnpm start\n```\n\n## 🔧 Environment Variables\n\nCreate `.env.local` in the `frontend` directory with:\n\n```env\n# Authentication\nNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...\nCLERK_SECRET_KEY=sk_test_...\n\n# Database\nCONVEX_DEPLOYMENT=your_convex_deployment\nNEXT_PUBLIC_CONVEX_URL=https://your-deployment.convex.cloud\n\n# AI Services\nGOOGLE_GENERATIVE_AI_API_KEY=your_google_ai_key\nGROQ_API_KEY=your_groq_key\nGOOGLE_API_KEY=your_google_api_key\n\n\n# CopilotKit AI Chat\nNEXT_PUBLIC_COPILOTKIT_PUBLIC_LICENSE_KEY=your_copilotkit_license\nNEXT_PUBLIC_COPILOTKIT_PUBLIC_API_KEY=your_copilotkit_api_key\n\n# Nuclia RAG (Progress/Kendo)\nNEXT_PUBLIC_NUCLIA_SYNC_URL=http://localhost:4000\nNEXT_PUBLIC_NUCLIA_API_KEY=your_nuclia_api_key\n\n# Billing \u0026 Feature Gates\nNEXT_PUBLIC_SCHEMATIC_PUBLISHABLE_KEY=your_schematic_pub_key\nSCHEMATIC_API_KEY=your_schematic_secret_key\nNEXT_PUBLIC_SCHEMATIC_COMPONENT_ID=your_component_id\n```\n\n## 🏗️ Tech Stack Details\n\n### On Trial Services\n\n- **Nuclia RAG** - Retrieval-augmented generation (Trial) (Progress/Kendo)\n- **Kendo UI** - Enterprise UI components (licensed Trial)\n\n### Frontend Framework\n\n- **Next.js 15.5.2** - React framework with App Router\n- **React 19.1.0** - UI library with concurrent features\n- **TypeScript 5.5.4** - Type-safe JavaScript\n\n### UI \u0026 Styling\n\n- **Tailwind CSS 3.4.17** - Utility-first CSS framework\n- **Shadcn/ui** - Modern component library built on Radix UI\n- **MagicUI** - Animated UI components\n- **Aceternity UI** - Additional UI components\n- **Framer Motion** - Animation library\n- **Three.js** - 3D graphics and interactive droplets\n\n### Authentication \u0026 Security\n\n- **Clerk** - Complete authentication and user management\n- **Schematic** - Feature gating and billing management\n\n### Database\n\n- **Convex** - Real-time database with serverless functions\n\n### Gen AI\n\n- **CopilotKit with GROQ** - AI chat interface and actions\n- **Vercel AI SDK** - Unified AI API interface\n\n### Additional Libraries\n\n- **Tsparticles** - Interactive particle effects\n- **React Dropzone** - File upload handling\n- **React Markdown** - Markdown rendering\n- **Recharts** - Data visualization\n- **Date-fns** - Date manipulation\n- **Zod** - Schema validation\n\n## 🏃‍♂️ Development Scripts\n\n### Root-Level Scripts (Recommended)\n\n```bash\n# Quick setup for everything\nnpm run setup          # Install all dependencies and show next steps\nnpm run dev           # Start all services (frontend + convex + backend)\nnpm install:all       # Install dependencies for all services\n```\n\n### Frontend Scripts\n\n```bash\ncd frontend\n\n# Development\npnpm dev          # Start dev server with Turbopack\npnpm build        # Production build\npnpm start        # Production server\npnpm lint         # ESLint checking\n\n# Convex Database\nnpx convex dev    # Start Convex development\nnpx convex deploy # Deploy Convex functions\nnpx convex dashboard # Open Convex dashboard\n```\n\n### Backend Scripts\n\n```bash\ncd backend/nuclia-sync\n\n# Development\nnpm run dev       # Start with auto-restart (nodemon)\nnpm start         # Production start\n```\n\n### Multi-Service Development\n\nFor running multiple services simultaneously, consider using a process manager like PM2 or concurrently.\n\n## 🔍 Troubleshooting\n\n### Common Issues\n\n**CopilotKit not working:**\n\n- Verify `NEXT_PUBLIC_COPILOTKIT_PUBLIC_LICENSE_KEY` and `NEXT_PUBLIC_COPILOTKIT_PUBLIC_API_KEY` are set\n- Check browser console for CopilotKit initialization errors\n\n**Convex connection failed:**\n\n- Ensure `npx convex dev` is running\n- Verify `CONVEX_DEPLOYMENT` and `NEXT_PUBLIC_CONVEX_URL` are correct\n- Run `npx convex dashboard` to check deployment status\n\n**Nuclia RAG not responding:**\n\n- Ensure backend sync service is running on port 4000\n- Check `NEXT_PUBLIC_NUCLIA_API_KEY` is valid\n- Verify Nuclia knowledge box configuration\n\n**Schematic billing not working:**\n\n- Confirm `NEXT_PUBLIC_SCHEMATIC_PUBLISHABLE_KEY` and `SCHEMATIC_API_KEY` are set\n- Check Schematic dashboard for component configuration\n\n**Build errors:**\n\n- Ensure all environment variables are set\n- Try `pnpm install` to refresh dependencies\n- Check Node.js version (18+ required)\n\n### Environment Setup Verification\n\nRun this script to verify your environment:\n\n```bash\n# In frontend directory\nnode -e \"\nconsole.log('Node version:', process.version);\nconsole.log('Environment check:');\nconsole.log('CLERK_KEY:', !!process.env.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY);\nconsole.log('CONVEX_URL:', !!process.env.NEXT_PUBLIC_CONVEX_URL);\nconsole.log('COPILOTKIT_KEY:', !!process.env.NEXT_PUBLIC_COPILOTKIT_PUBLIC_LICENSE_KEY);\nconsole.log('NUCLIA_KEY:', !!process.env.NEXT_PUBLIC_NUCLIA_API_KEY);\nconsole.log('SCHEMATIC_KEY:', !!process.env.NEXT_PUBLIC_SCHEMATIC_PUBLISHABLE_KEY);\n\"\n```\n\n## 📁 Project Structure\n\n```\nEduBox/\n├── frontend/                 # Next.js application\n│   ├── app/                  # App Router pages and API routes\n│   ├── components/           # React components\n│   │   ├── magicui/         # MagicUI components\n│   │   ├── schematic/       # Schematic billing components\n│   │   └── ui/              # Shadcn/ui components\n│   ├── convex/              # Convex database schema and functions\n│   ├── lib/                 # Utility libraries\n│   ├── hooks/               # Custom React hooks\n│   └── types/               # TypeScript type definitions\n├── backend/\n│   └── nuclia-sync/         # Nuclia document sync service\n└── README.md\n```\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\n3. Commit changes: `git commit -m 'Add amazing feature'`\n4. Push to branch: `git push origin feature/amazing-feature`\n5. Open a Pull Request\n\n### Development Guidelines\n\n- Use TypeScript for all new code\n- Follow ESLint configuration\n- Test components with React Testing Library\n- Update Convex schema for database changes\n- Document new environment variables\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003eMade with ❤️ by Arya • \u003ca href=\"https://github.com/ARYPROGRAMMER\"\u003eGitHub\u003c/a\u003e • \u003ca href=\"https://edubox-ai.vercel.app/\"\u003eWebsite\u003c/a\u003e\u003c/p\u003e\n\u003c/div\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faryprogrammer%2Fedubox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faryprogrammer%2Fedubox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faryprogrammer%2Fedubox/lists"}