An AI-powered multi-agent learning platform that generates personalized software engineering roadmaps, practical coding quests, and intelligent code reviews.
DevQuest AI leverages a modular AI agent architecture to transform a user's learning goal into a structured learning experience. Specialized AI agents collaborate to analyze the user's objective, generate a personalized roadmap, create project-based coding quests, and evaluate submitted solutions with structured AI feedback.
Powered locally by Llama 3.2 through Ollama.
Built with Next.js, FastAPI, TypeScript, Tailwind CSS, and Ollama.
DevQuest AI demonstrates how a team of specialized AI agents can collaborate to solve a complex task by decomposing it into focused responsibilities, resulting in a personalized and interactive software engineering learning experience.
- Multi-Agent AI Architecture with specialized agents.
- Personalized Learning Roadmap Generation tailored to software engineering goals.
- Project-Based Coding Quest Generation aligned with the generated learning roadmap.
- AI-Powered Code Review with structured feedback.
- Real-Time Agent Execution using Server-Sent Events (SSE).
- Responsive User Interface built with Next.js and Tailwind CSS.
- Local LLM Inference powered by Llama 3.2 via Ollama.
- Modular FastAPI Backend Architecture.
DevQuest AI follows a modular multi-agent architecture in which each AI agent is responsible for a single stage of the learning workflow.
The complete workflow is illustrated below.
The workflow begins when a user submits a learning goal through the frontend. The backend orchestrator sequentially executes four specialized AI agents:
- Goal Interpreter analyzes and validates the user's objective.
- Learning Path Planner generates a personalized learning roadmap.
- Quest Generator creates practical coding quests aligned with the roadmap.
- Reviewer evaluates submitted solutions and provides structured AI feedback, including a score, strengths, areas for improvement, and personalized recommendations.
| Agent | Responsibility |
|---|---|
| Goal Interpreter | Analyzes the user's learning objective and validates whether the requested goal is supported. |
| Learning Path Planner | Generates a structured learning roadmap adapted to the user's goal and experience level. |
| Quest Generator | Generates practical coding quests with appropriate difficulty levels (Beginner, Intermediate, or Advanced) based on the generated learning roadmap. |
| Reviewer | Evaluates submitted solutions and returns structured feedback, strengths, suggested improvements, and a score. |
| Category | Technologies |
|---|---|
| Frontend | Next.js, React, TypeScript, Tailwind CSS |
| Backend | FastAPI, Python |
| AI Framework | Custom Multi-Agent Architecture |
| LLM | Llama 3.2 (via Ollama) |
| Communication | REST API, Server-Sent Events (SSE) |
| Development Tools | uv, npm |
-
The user enters a software engineering learning goal.
-
The Goal Interpreter Agent analyzes the request, identifies the target domain, experience level, and validates whether the goal is supported.
-
The Learning Path Planner Agent generates a personalized learning roadmap with progressively ordered topics.
-
The Quest Generator Agent creates practical coding quests aligned with the generated learning roadmap.
-
The user selects a quest and submits a solution.
-
The Reviewer Agent evaluates the submitted solution and returns structured AI feedback, including:
- Overall score
- Strengths
- Areas for improvement
- Personalized recommendations
devquest_ai/
│
├── app/ # Next.js App Router pages
├── components/ # Reusable React components
├── services/ # Frontend API communication
├── types/ # Shared TypeScript types
│
├── backend/
│ ├── agents/ # AI agents
│ ├── models/ # Pydantic models
│ ├── orchestrator/ # Multi-agent orchestration
│ ├── prompts/ # Prompt templates
│ ├── services/ # LLM and prompt services
│ └── main.py # FastAPI application
│
├── package.json
└── README.md
| Directory | Description |
|---|---|
app/ |
Next.js App Router pages and application entry point. |
components/ |
Reusable UI components used throughout the application. |
services/ |
Frontend services responsible for communicating with the backend API. |
types/ |
Shared TypeScript interfaces and models. |
backend/agents/ |
AI agents responsible for the learning workflow. |
backend/models/ |
Pydantic models used for request and response validation. |
backend/orchestrator/ |
Coordinates the execution of all AI agents. |
backend/prompts/ |
Prompt templates used by each AI agent. |
backend/services/ |
Services for LLM interaction and prompt management. |
| Method | Endpoint | Description |
|---|---|---|
GET |
/health |
Returns the current health status of the backend service. |
POST |
/generate-learning-path |
Generates a personalized learning roadmap and coding quests. |
POST |
/generate-learning-path-stream |
Streams the execution of each AI agent in real time using Server-Sent Events (SSE) while generating the learning roadmap and coding quests. |
POST |
/review-solution |
Reviews a submitted solution and returns structured AI feedback. |
Note: The frontend uses the
/generate-learning-path-streamendpoint to visualize the execution of each AI agent in real time, while/generate-learning-pathreturns the final result as a single JSON response.
Before running the project locally, make sure you have the following installed:
- Python 3.12+
- Node.js 20+
- uv
- Ollama
Download the required LLM:
ollama pull llama3.2git clone https://github.com/andref218/devquest_ai.git
cd devquest_aiNavigate to the backend directory:
cd backendInstall the dependencies:
uv syncStart the FastAPI server:
uv run uvicorn main:app --reloadThe backend will be available at:
http://localhost:8000
Return to the project root:
cd ..Install the frontend dependencies:
npm installStart the development server:
npm run devThe frontend will be available at:
http://localhost:3000
Potential future enhancements include:
- User authentication and personalized profiles.
- Progress tracking across completed learning paths.
- Learning resource recommendations for each roadmap topic.
- Support for multiple LLM providers (OpenAI, Anthropic, Gemini, etc.).
- Adaptive quest generation based on previous performance.
- Roadmap export to PDF or Markdown.
André Fonseca
- GitHub: https://github.com/andref218
- Hugging Face: https://huggingface.co/andref218
This project is licensed under the MIT License.

