Coder Buddy is a comprehensive AI-powered coding assistant built with LangGraph. It features a multi-agent development team that can transform natural language requests into complete, working projects AND answer general questions with an enhanced production-level web interface.
- Modern React Frontend - Beautiful, colorful, and engaging user interface
- Real-time Workflow Monitoring - Track your AI agents in action
- Interactive Q&A Chat - Get help with both technical and general questions
- Project Gallery - Browse and explore generated projects
- WebSocket Integration - Real-time updates and notifications
- General Q&A Agent - Comprehensive assistant for technical AND general knowledge
- Intelligent Request Routing - Automatically detects project requests vs questions
- Enhanced Monitoring - Track agent performance and session history
- Session Management - Persistent workflow tracking
- Planner Agent β Analyzes your request and generates a detailed project plan
- Architect Agent β Breaks down the plan into specific engineering tasks
- Coder Agent β Implements each task and writes directly into files
- Q&A Agent β Handles both technical programming and general knowledge questions
- Project Generator β Create projects through intuitive web interface
- Q&A Chat β Interactive chat with AI assistant
- Workflow Monitor β Real-time agent activity tracking
- Project Gallery β Browse generated projects with preview capabilities
- uv package manager - Follow instructions here
- Node.js & Yarn - For the React frontend
- Google API Key - Create one here
-
Clone and Setup Environment
cd /path/to/coder-buddy uv venv && source .venv/bin/activate
-
Install Python Dependencies
python -m pip install langchain langchain-core langchain-google-genai langgraph pydantic python-dotenv fastapi uvicorn websockets
-
Install Frontend Dependencies
cd frontend yarn install
-
Configure Environment
# Create .env file in root directory echo "GOOGLE_API_KEY=your_google_api_key_here" > .env
Start both backend and frontend servers:
# Option A: Use the startup script
python start_dashboard.py
# Option B: Start manually
# Terminal 1 - Backend
python -m uvicorn web_server:app --host 0.0.0.0 --port 8000 --reload
# Terminal 2 - Frontend
cd frontend && yarn start
Access Points:
- π Frontend Dashboard: http://localhost:3000
- π‘ Backend API: http://localhost:8000
- π API Documentation: http://localhost:8000/docs
# Interactive CLI with smart routing
python main.py
# Show web dashboard option
python main.py --web
- Natural Language Input - Describe your project idea in plain English
- Multi-Agent Processing - Planner β Architect β Coder workflow
- Real-time Monitoring - Watch agents work on your project
- File Management - Automatic project structure creation
Example Prompts:
- "Create a modern todo app with React and local storage"
- "Build a colorful weather dashboard with animations"
- "Make a creative portfolio website with gradient backgrounds"
- Technical Questions - Programming help, syntax, best practices
- General Knowledge - Wide range of topics and information
- Interactive Chat - Conversational interface with history
- Smart Detection - Automatically categorizes technical vs general questions
Example Questions:
- "How do I implement authentication in React?"
- "What's the difference between Python and JavaScript?"
- "Explain machine learning in simple terms"
- Session Tracking - Monitor all agent activities
- Real-time Updates - Live progress tracking
- Performance Metrics - Success rates and timing
- Historical Data - Browse past sessions and results
- Generated Projects - Browse all created projects
- File Preview - View file contents and structure
- Project Management - Organize and access your creations
- Download Options - Export projects for use
- Colorful & Creative - Vibrant, engaging interface
- Responsive Design - Works on all screen sizes
- Smooth Animations - Framer Motion powered interactions
- Glass Morphism - Modern UI/UX patterns
- WebSocket Integration - Live updates and notifications
- Progress Tracking - Watch agents work in real-time
- Session Management - Persistent state across interactions
- Error Handling - Graceful error recovery and reporting
Create a modern blog website with:
- Responsive design
- Dark/light theme toggle
- Comment system
- Search functionality
Build a data visualization dashboard with:
- Interactive charts
- CSV file upload
- Statistical analysis
- Export capabilities
- Technical: "How do I optimize React component performance?"
- General: "What are the benefits of sustainable energy?"
- Mixed: "Explain the concept of cloud computing and its applications"
Endpoint | Method | Description |
---|---|---|
/api/health |
GET | Health check |
/api/generate-project |
POST | Generate a new project |
/api/ask-question |
POST | Ask Q&A agent |
/api/sessions |
GET | Get workflow sessions |
/api/sessions/{id} |
GET | Get specific session |
/api/generated-projects |
GET | List generated projects |
/ws |
WebSocket | Real-time updates |
# Generate Project
curl -X POST "http://localhost:8000/api/generate-project" \
-H "Content-Type: application/json" \
-d '{"prompt": "Create a todo app with HTML, CSS, JavaScript"}'
# Ask Question
curl -X POST "http://localhost:8000/api/ask-question" \
-H "Content-Type: application/json" \
-d '{"question": "What is React?", "context": ""}'
- User Input β Natural language project description
- Planner β Analyzes requirements and creates structured plan
- Architect β Breaks down into implementation tasks
- Coder β Executes tasks and creates files
- Monitoring β Tracks progress and reports completion
- Question Input β User asks technical or general question
- Classification β System determines question type
- Processing β AI generates comprehensive answer
- Response β Formatted answer with context
- Be specific about features and requirements
- Mention preferred technologies or frameworks
- Include styling preferences (modern, colorful, minimal)
- Specify any special functionality needed
- Ask clear, specific questions
- Provide context when helpful
- Use follow-up questions for clarification
- Explore both technical and general topics
- Frontend Components - Located in
/frontend/src/components/
- Backend Endpoints - Add to
web_server.py
- Agent Logic - Extend
agent/graph.py
- Monitoring - Enhance
agent/monitoring.py
- Tailwind Config -
frontend/tailwind.config.js
- Custom CSS -
frontend/src/App.css
- Component Styles - Individual component files
- Memory: 2GB RAM minimum (4GB recommended)
- CPU: Multi-core processor recommended
- Storage: Projects stored in
/generated_project/
- Network: Internet connection for AI model access
- Real-time Metrics - Agent performance tracking
- Session History - Complete workflow logs
- Error Tracking - Comprehensive error reporting
- Resource Usage - System performance monitoring
# Production environment variables
GOOGLE_API_KEY=your_production_key
NODE_ENV=production
REACT_APP_BACKEND_URL=https://your-domain.com/api
# Example Dockerfile structure
FROM node:18 as frontend-build
# ... frontend build steps
FROM python:3.11
# ... backend setup
COPY --from=frontend-build /app/build ./frontend/build
- Fork the repository
- Create feature branch
- Install dependencies
- Make changes
- Test thoroughly
- Submit pull request
- Python: Follow PEP 8 standards
- JavaScript: Use ESLint configuration
- React: Functional components with hooks
- CSS: Tailwind-first approach
CopyrightΒ©οΈ Codebasics Inc. All rights reserved.
- β Production-level Web Interface with React dashboard
- β General Q&A Agent for comprehensive assistance
- β Real-time Monitoring with WebSocket integration
- β Enhanced UI/UX with colorful, engaging design
- β Project Gallery with file preview capabilities
- β Session Management for workflow tracking
- β API Integration for seamless frontend-backend communication
- Enhanced error handling and recovery
- Improved agent coordination and monitoring
- Better file organization and project structure
- Responsive design for all screen sizes
- Performance optimizations for better user experience
The enhanced Coder Buddy now provides a complete development assistant experience with both powerful AI capabilities and a beautiful, intuitive interface! π