Skip to content

Sefali12/DevOdos

 
 

Repository files navigation

🚀 DevOdos - A win for the wise. A “what if” for the late.

DevOdos Logo

Transform your coding journey with personalized, AI-generated learning roadmaps

Live Demo License Python React TypeScript

🎯 What is DevOdos?

DevOdos is an intelligent learning platform that creates personalized, interactive roadmaps for developers at any stage of their journey. Whether you're a complete beginner or a seasoned professional exploring new technologies, DevOdos provides structured, comprehensive learning paths tailored to your specific goals.

Key Features

  • 🤖 AI-Powered Roadmaps - Advanced AI generates comprehensive, personalized learning paths
  • 🎨 Interactive Visualizations - Beautiful roadmap.sh-style interactive learning maps
  • 📊 Progress Tracking - Real-time analytics and milestone celebrations
  • 📚 Comprehensive Resources - Curated free and premium learning materials
  • 📱 Responsive Design - Perfect experience across all devices
  • 📄 PDF Export - Download roadmaps for offline study
  • 🔐 Secure Authentication - User accounts with progress persistence
  • 🌐 Modern Tech Stack - Built with React, TypeScript, Python, and Supabase

🛠️ Tech Stack

Frontend

  • React 18 with TypeScript
  • Tailwind CSS for styling
  • Vite for build tooling
  • Lucide React for icons
  • React Router for navigation

Backend

  • Python Flask REST API
  • Groq AI for roadmap generation
  • Supabase for database and authentication
  • CORS enabled for cross-origin requests

Database

  • PostgreSQL via Supabase
  • Row Level Security (RLS) enabled
  • Real-time subscriptions support

AI & ML

  • Groq LLaMA 3 70B for content generation
  • Advanced JSON parsing with fallback strategies
  • Robust error handling and content validation

📋 Prerequisites

  • Python 3.8+
  • Node.js 16+ and npm
  • Supabase Account (free tier available)
  • Groq API Key (free tier available)

Quick Start

1. Clone the Repository

git clone https://github.com/yourusername/devodos.git
cd devodos

2. Backend Setup

# Create virtual environment
python -m venv venv

# Activate virtual environment
# Windows:
venv\Scripts\activate
# macOS/Linux:
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

3. Frontend Setup

# Install Node.js dependencies
npm install

# Build the frontend
npm run build

4. Environment Configuration

# Copy environment template
cp .env.example .env

# Edit .env with your credentials
nano .env

Required Environment Variables:

# Supabase Configuration
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key

# AI Configuration
GROQ_API_KEY=your_groq_api_key

# Flask Configuration
SECRET_KEY=your_secret_key
FLASK_ENV=development

5. Database Setup

The database schema is automatically managed through Supabase migrations. Simply ensure your Supabase project is configured with the provided migration files.

6. Run the Application

# Start the Flask server
python app.py

# The application will be available at http://localhost:5000

🔧 Development

Development Mode

# Terminal 1: Start Flask backend
python app.py

# Terminal 2: Start Vite dev server (optional)
npm run dev

Production Build

# Build frontend for production
npm run build

# Start production server
python app.py

📊 API Endpoints

Authentication

  • POST /signup - User registration
  • POST /login - User authentication

Roadmap Generation

  • POST /generate-roadmap - Generate AI-powered roadmap
  • POST /user-roadmaps - Get user's roadmaps
  • GET /api/roadmap/<id> - Get specific roadmap

Learning Resources

  • GET /explain-topic - Get detailed topic explanations
  • GET /generate-quiz - Generate topic-based quizzes

Health Check

  • GET /health - Application health status

🎨 Features in Detail

🤖 AI-Powered Roadmap Generation

  • Multi-Strategy JSON Parsing - Handles malformed AI responses
  • Fallback Content Generation - Ensures users always get quality roadmaps
  • Technology-Specific Customization - Adapts to chosen programming languages
  • Progressive Difficulty Levels - From Foundation to Expert

📊 Interactive Learning Experience

  • Visual Progress Tracking - Real-time completion statistics
  • Expandable Node Structure - Detailed subtopic exploration
  • Topic Deep-Dives - Comprehensive explanations with resources
  • PDF Export Functionality - Offline study materials

🔐 Secure User Management

  • Password Hashing - SHA-256 encryption
  • Session Management - Persistent login state
  • Row Level Security - Database-level access control
  • Input Validation - Comprehensive data sanitization

🚀 Deployment

Environment Setup

  1. Set up Supabase project
  2. Configure environment variables
  3. Deploy to your preferred platform (Heroku, DigitalOcean, AWS, etc.)

Production Considerations

  • Enable HTTPS in production
  • Configure proper CORS settings
  • Set up monitoring and logging
  • Implement rate limiting for API endpoints

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Development Workflow

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Code Style

  • Python: Follow PEP 8 guidelines
  • TypeScript/React: Use ESLint configuration
  • Commits: Use conventional commit messages

📝 License

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

🙏 Acknowledgments

  • Groq for providing powerful AI capabilities
  • Supabase for backend infrastructure
  • React Community for excellent tooling

📞 Support

🗺️ Roadmap

Current Version (v1.0)

  • ✅ AI-powered roadmap generation
  • ✅ Interactive progress tracking
  • ✅ PDF export functionality
  • ✅ User authentication
  • ✅ Topic explanations

Upcoming Features (v1.1)

  • 🔄 Social learning features
  • 🔄 Advanced analytics dashboard
  • 🔄 Mobile app development
  • 🔄 Integration with coding platforms
  • 🔄 Mentor matching system

Future Vision (v2.0)

  • 🔮 AI-powered code review
  • 🔮 Real-time collaboration
  • 🔮 Corporate team features
  • 🔮 Advanced skill assessments
  • 🔮 Industry certification paths

Made with ❤️ by the DevOdos Team

About

DevOdos is an AI-powered web app that crafts *personalized developer roadmaps* to help learners master any programming skill — guided by your goals, level, and language preference

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 73.2%
  • Python 23.9%
  • PLpgSQL 2.2%
  • Other 0.7%