An AI-powered SaaS prototype that generates fully personalized learning roadmaps, quizzes, and dynamically adapts based on each user's performance. Built for hackathons, startups & edtech innovation.
- 🧠 What is this?
- ✨ Features
- 📸 Screenshots
- 🚀 Installation & Setup
- ⚙️ Usage
- 🛠 How It Works
- 🌐 Architecture
- 🔌 API Reference
- 🔧 Environment Variables
- 🐞 Troubleshooting
- ❓ FAQ
- 🤝 Contributing
- 📜 License
- 🌟 Acknowledgments
This project solves one of the biggest problems in self‑learning:
"How do I know what to learn next, and whether I'm truly making progress?"
CourseFlow empowers learners by:
- Generating fully custom courses & learning paths based on a simple prompt.
- Auto‑creating quizzes for each module to test comprehension.
- Providing AI‑powered feedback on quiz results, confidence levels, and written reflections.
- Dynamically adjusting the roadmap to focus on strengths and shore up weaknesses.
- Recommending real‑world projects and career opportunities aligned to each learner’s journey.
- Delivering weekly coaching messages to keep motivation high.
-
Personalized Roadmap Generation Break down any skill goal into modules, topics, micro‑projects, and free resources.
-
AI‑Generated Quizzes Multiple‑choice questions per lesson to reinforce learning.
-
Adaptive Feedback Loop After every quiz, users submit confidence & reflections; AI analyzes performance and adjusts the path.
-
Project Recommendations Hands‑on project suggestions tailored to each module to apply skills immediately.
-
Career Path Suggestions Curated list of relevant internships, freelance gigs, and job roles matching the learner’s progress.
-
Progress Dashboard Visualize completed modules, quiz scores, confidence trends, and upcoming goals.
-
Export & Share Download your custom roadmap and progress report as PDF, Markdown, or shareable link.
-
Clone the repository
git clone https://github.com/yourusername/courseflow.git cd courseflow -
Install dependencies
npm install
-
Configure environment variables Create a
.envfile in the root directory:NEXT_PUBLIC_SUPABASE_URL=https://xyzcompany.supabase.co NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key OPENROUTER_API_KEY=your_openrouter_api_key
-
Run the development server
npm run dev
Open http://localhost:3000 in your browser.
-
Sign Up / Log In Create an account or sign in to access your dashboard.
-
Create a New Course
- Enter the skill goal (e.g., “Learn React.js from scratch”).
- Select your current level and weekly commitment.
- Click Generate Course to receive your custom roadmap, lessons, quizzes, and resources.
-
Work Through Modules
- Read lesson content.
- Complete quizzes to test understanding.
- Rate your confidence and reflect on struggles.
-
Receive Adaptive Feedback
- AI analyzes your input and quiz scores.
- Roadmap adjusts to focus on weaker areas.
- Motivational coach messages guide your next steps.
-
Explore Projects & Careers
- Browse hands‑on projects recommended for each module.
- Discover relevant jobs, internships, and freelance opportunities.
-
Export & Share
- Download your roadmap & progress report.
- Share a public link with peers or mentors.
-
User Input Learner describes their goal, level, and time availability.
-
LLM Roadmap Generation A crafted prompt is sent to Llama 3 via Groq Cloud, returning a structured JSON roadmap.
-
Data Persistence All courses, modules, quizzes, resources, and progress data are stored in Supabase.
-
Quiz & Reflection For each module, quizzes are auto-generated. Learners submit scores, confidence, and reflections.
-
Adaptive Feedback An LLM analyzes quiz results & reflections, identifies gaps, and outputs updated roadmap segments and motivational messages.
-
Dynamic UI Rendering React.js fetches from Supabase and renders interactive roadmaps (Mermaid.js) and progress dashboards in real time.
+--------------+ +--------------+ +-----------+
| Frontend | <----> | Backend API | <---->| Supabase |
| (React.js) | | (Node/Express)| | (Postgres)|
+--------------+ +--------------+ +-----------+
| |
v v
+--------------+ +-------------+
| Groq Cloud | | OpenRouter |
| (Llama 3 API)| | AI Proxy |
+--------------+ +-------------+
Generate a new learning roadmap.
Request:
{
"goal": "Learn Kubernetes",
"level": "Beginner",
"hoursPerWeek": 5
}Response:
{
"courseId": "uuid",
"modules": [ ... ]
}Submit quiz results and get adaptive feedback.
Request:
{
"courseId": "uuid",
"moduleId": "uuid",
"score": 7,
"confidence": 3,
"reflection": "Found networking concepts tough"
}Response:
{
"weakTopics": [ ... ],
"suggestedResources": [ ... ],
"updatedModules": [ ... ],
"coachMessage": "Great job! Let's review..."
}| Name | Description |
|---|---|
NEXT_PUBLIC_SUPABASE_URL |
Your Supabase project URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY |
Supabase anon public key |
SUPABASE_SERVICE_ROLE_KEY |
Supabase service role key (server-side only) |
OPENROUTER_API_KEY |
API key for OpenRouter to access LLM models |
- Invalid JSON from AI: Ensure prompts are correctly formatted and rate limits haven't been exceeded.
- Supabase connection errors:
Verify your URL and keys in
.envand that your IP is allowed in Supabase settings. - Deployment issues: Check logs on Vercel/Railway, and ensure environment variables are set in the platform.
Q: Can I customize the quiz length or difficulty?
A: Yes—modify the prompt in /prompts/roadmap_prompt.txt to adjust quiz parameters.
Q: How do I add more resource types? A: Update the AI prompt to include additional resource categories (e.g., podcasts, GitHub repos).
Q: Is user data secure? A: All data is stored in Supabase with row-level security. Service keys are only used server-side.
We welcome your contributions! To get started:
- Fork the repo
- Create a new branch (
git checkout -b feature/YourFeature) - Make your changes and commit (
git commit -m 'Add feature') - Push (
git push origin feature/YourFeature) - Open a Pull Request
Please ensure code style consistency and update/add tests where appropriate.
This project is licensed under the MIT License. See LICENSE for details.
- Supabase for seamless backend services.
- Groq Cloud for blazing-fast LLM inference.
- OpenRouter for simplified AI API access.
- Mermaid.js for roadmap visualizations.
- Inspiration from learners worldwide striving for continuous improvement.




