An intelligent learning platform that adapts to your pace and learning style
Built on AWS Cloud Infrastructure βοΈ
Track your learning progress, streaks, XP, and upcoming modules
Lessons synthesized from multiple sources with Perplexity-style attribution
AI-generated study notes with key takeaways and practice exercises
Full-featured code editor with AI tutor, multi-file support, and real-time execution
Interactive voice assessments with speech-to-text and AI evaluation
Chrome extension providing accessible reading experience with OpenDyslexic font
AdaptEd is a comprehensive learning platform built on AWS cloud infrastructure, providing:
- Personalized Learning Roadmaps - AI-generated paths using AWS Bedrock (Claude 3)
- Interactive Lessons - Rich content with videos, documentation, and hands-on exercises
- Viva Voice Examinations - Voice-based assessments powered by AWS Transcribe & Polly
- Code Sandbox (MCP-IDE) - Full-featured IDE with AI tutor for coding practice
- Progress Tracking - Detailed analytics stored in AWS DynamoDB
- Accessibility Features - Dyslexia-friendly mode via Chrome extension
AdaptEd leverages multiple AWS services for enterprise-grade scalability and reliability:
- AWS Bedrock (Claude 3) - AI content generation and intelligent tutoring
- AWS DynamoDB - Serverless NoSQL database for user data and roadmaps
- AWS Transcribe - Speech-to-text for voice examinations
- AWS Polly - Text-to-speech for AI interviewer responses
- AWS S3 - Secure file storage for audio and media
- AWS EC2 - Scalable compute for application hosting
AdaptEd/
βββ frontend/ # Main React frontend (Port 5173)
βββ backend/ # Python FastAPI backend (Port 8001)
βββ mcp-ide/ # Integrated coding environment
β βββ frontend/ # IDE React frontend (Port 5174)
β βββ backend/ # IDE Python backend (Port 8000)
βββ sample-frontend/ # Demo/template frontend (Port 8080)
βββ chrome-extension/ # Dyslexia mode extension
βββ docs/ # Documentation
- Node.js 18+ and npm
- Python 3.8+
- Git
- AWS Account with access to:
- AWS Bedrock (Claude 3 models)
- AWS DynamoDB
- AWS Transcribe
- AWS Polly
- AWS S3
- AWS Credentials (Access Key ID and Secret Access Key)
- Firebase Account (for authentication)
git clone <repository-url>
cd AdaptEdcd frontend
npm install
cp .env.example .env
# Edit .env and add your Firebase credentials
npm run dev # Runs on http://localhost:5173cd backend
# Install Python dependencies
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Mac/Linux
pip install -r requirements.txt
# Configure AWS credentials
cp .env.example .env
# Edit .env and add:
# - AWS_ACCESS_KEY_ID
# - AWS_SECRET_ACCESS_KEY
# - AWS_REGION (default: us-east-1)
# Set up AWS infrastructure (DynamoDB tables, S3 bucket)
python aws_setup.py
# Start backend
python -m uvicorn main:app --reload --port 8001Note: You need to enable AWS Bedrock and request access to Claude 3 models in the AWS Console before running the backend.
cd mcp-ide/frontend
npm install
npm run dev # Runs on http://localhost:5174cd mcp-ide/backend
python -m venv venv
venv\Scripts\activate # Windows
pip install -r requirements.txt
cp .env.example .env
# Edit .env and add Supabase credentials
python -m uvicorn app.main:app --reload --port 8000# Load unpacked extension in Chrome
# 1. Go to chrome://extensions/
# 2. Enable "Developer mode"
# 3. Click "Load unpacked"
# 4. Select AdaptEd/chrome-extension folder- AI-generated learning paths using Claude 3 via AWS Bedrock
- Adaptive content that skips what you already know
- Weekly module structure with clear progression
- Support for multiple tech stacks (Full-Stack, Frontend, Backend, DevOps, etc.)
- Rich content with multiple sources:
- YouTube video tutorials
- MDN documentation
- Interactive examples
- AI-generated lesson content using AWS Bedrock (Claude 3)
- Progress tracking per module
- Note-taking and bookmarking
- Voice-based Q&A assessments powered by AWS services
- 5 questions per module
- Pass threshold: 60%
- Speech recognition using AWS Transcribe
- AI-powered evaluation using AWS Bedrock (Claude 3)
- Natural voice responses using AWS Polly
- Full-featured code editor with Monaco
- Multi-file support with file explorer
- AI coding tutor (Shadow Tutor)
- Code execution for JavaScript, Python, C++
- Terminal integration
- Code history and snapshots
- RAG-powered context-aware assistance
- Embedded in main app or standalone
- Module completion tracking stored in DynamoDB
- Streak counter
- XP and leveling system
- Viva score analytics
- Weekly activity charts
- Achievement badges
- Dyslexia-friendly mode
- Chrome extension for web-wide support
- Customizable fonts and spacing
- High contrast options
VITE_FIREBASE_API_KEY=your_firebase_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_id
VITE_API_URL=http://localhost:8001# AWS Credentials (Required)
AWS_ACCESS_KEY_ID=your_aws_access_key_id
AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key
AWS_REGION=us-east-1
# AWS DynamoDB Tables
DYNAMODB_USERS_TABLE=adapted-users
DYNAMODB_ROADMAPS_TABLE=adapted-roadmaps
DYNAMODB_VIVA_SESSIONS_TABLE=adapted-viva-sessions
# AWS S3 Bucket
S3_AUDIO_BUCKET=adapted-audio-files
# YouTube API (Optional)
YOUTUBE_API_KEY=your_youtube_api_keySUPABASE_URL=your_supabase_url
SUPABASE_KEY=your_supabase_anon_key
# Note: MCP-IDE can be migrated to AWS RDS if needed| Service | Port | URL |
|---|---|---|
| Main Frontend | 5173 | http://localhost:5173 |
| Main Backend | 8001 | http://localhost:8001 |
| MCP-IDE Frontend | 5174 | http://localhost:5174 |
| MCP-IDE Backend | 8000 | http://localhost:8000 |
| Sample Frontend | 8080 | http://localhost:8080 |
POST /generate-roadmap
Body: { goal, current_skills, time_commitment }
POST /generate-lesson-content
Body: { topic, module_title, week }
POST /viva/start-simple?module_topic=...&user_goal=...
POST /viva/chat
Body: { session_id, user_text, module_topic }
POST /viva/complete
Body: { user_id, module_id, final_score }
GET /api/v1/files/projects
POST /api/v1/files/files
GET /api/v1/files/files/{file_id}
PATCH /api/v1/files/files/{file_id}
POST /api/v1/executor/run
Body: { code, language, project_id, file_path }
POST /api/v1/tutor/ask
Body: { editor_state, user_question, model_type }
- React 18 with TypeScript
- Vite for build tooling
- TailwindCSS for styling
- Framer Motion for animations
- Monaco Editor for code editing
- React Query for data fetching
- React Router for navigation
- Firebase for authentication
- FastAPI (Python)
- AWS Bedrock (Claude 3) for AI generation
- AWS DynamoDB for NoSQL database
- AWS Transcribe for speech-to-text
- AWS Polly for text-to-speech
- AWS S3 for file storage
- YouTube API for video search
- AWS EC2 for application hosting
- AWS CloudWatch for monitoring and logging
- AWS IAM for access management
- Boto3 (AWS SDK for Python)
- AWS Bedrock (Claude 3 Sonnet) - Content generation and conversation
- AWS Transcribe - Speech recognition
- AWS Polly (Neural) - Natural voice synthesis
- Sentence Transformers - Code embeddings (MCP-IDE)
- RAG - Context-aware tutoring
cd frontend
npm run test
npm run test:coveragecd backend
pytest
pytest --covcd mcp-ide/backend
pytest tests/- Sign Up/Login - Use Google authentication
- Onboarding - Set your learning goal and current skills
- Roadmap Generation - AI creates your personalized path
- Start Learning - Follow modules week by week
- Take Vivas - Pass voice exams to unlock next modules
- Practice Coding - Use Code Sandbox for hands-on practice
- Navigate to "Viva Voice" in sidebar
- Select a module you've completed
- Click "Start Viva"
- Answer 5 questions using voice or text
- Get instant feedback and scoring
- Pass with 60% or higher
- Click "Code Sandbox" in sidebar
- MCP-IDE loads in embedded view
- Create files, write code, run programs
- Ask AI tutor for help
- Click maximize for fullscreen mode
- Firebase Authentication for user management
- API key validation on all endpoints
- CORS configuration for cross-origin requests
- Environment variables for sensitive data
- No PII stored in code or logs
# Clear node_modules and reinstall
rm -rf node_modules package-lock.json
npm install# Check if AWS credentials are set
cat backend/.env
# Verify AWS Bedrock access
aws bedrock list-foundation-models --region us-east-1
# Restart backend
python -m uvicorn main:app --reload --port 8001- Go to AWS Console β Bedrock β Model access
- Request access to Claude 3 models
- Wait for approval (usually instant)
- Verify IAM permissions include
bedrock:InvokeModel
# Run AWS setup script to create tables
cd backend
python aws_setup.py- Verify audio file format (WAV, MP3, FLAC supported)
- Check S3 bucket exists and has correct permissions
- Ensure IAM role has
transcribe:StartTranscriptionJobpermission
- Verify MCP-IDE frontend is running on port 5174
- Check browser console for CORS errors
- Ensure Supabase credentials are correct (or migrate to AWS RDS)
- Check if main backend is running on port 8001
- Verify AWS Transcribe and Polly are enabled in your region
- Test with text input first (fallback mode)
- Create a branch:
git checkout -b feature/your-feature - Make changes
- Test thoroughly (including AWS integration)
- Commit:
git commit -m "Add: your feature" - Push:
git push origin feature/your-feature - Create Pull Request
- Frontend: ESLint + Prettier
- Backend: Black + Flake8
- Commits: Conventional Commits format
- Use IAM roles instead of hardcoded credentials in production
- Enable CloudWatch logging for all services
- Set up billing alerts to avoid unexpected costs
- Use AWS Secrets Manager for sensitive data
- Enable DynamoDB point-in-time recovery for data protection
For detailed AWS deployment instructions, see AWS_DEPLOYMENT.md
# 1. Launch EC2 instance (t3.medium recommended)
aws ec2 run-instances \
--image-id ami-0c55b159cbfafe1f0 \
--instance-type t3.medium \
--key-name your-key-pair
# 2. SSH into instance
ssh -i your-key.pem ec2-user@your-instance-ip
# 3. Clone and setup
git clone https://github.com/your-repo/AdaptEd.git
cd AdaptEd/backend
pip3 install -r requirements.txt
python3 aws_setup.py
# 4. Run application
python3 -m uvicorn main:app --host 0.0.0.0 --port 8001For 100 active users per month:
- AWS Bedrock: ~$30
- DynamoDB: ~$1.25
- Transcribe: ~$12
- Polly: ~$8
- S3: ~$0.30
- EC2 (2x t3.medium): ~$60
- Total: ~$116/month
See AWS_DEPLOYMENT.md for detailed cost breakdown and optimization tips.
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
[Your License Here]
[Your Team Information]
- AWS for cloud infrastructure and AI services (Bedrock, DynamoDB, Transcribe, Polly)
- Anthropic for Claude 3 AI models via AWS Bedrock
- Firebase for authentication
- Monaco Editor for code editing
- All open-source contributors
- Issues: [GitHub Issues]
- Email: [support@adapted.com]
- Docs: [Documentation Site]
- AWS Support: For AWS-specific issues, contact AWS Support
- β Personalized roadmaps (AWS Bedrock)
- β Interactive lessons (AWS Bedrock)
- β Viva examinations (AWS Transcribe + Polly)
- β Code sandbox
- β Progress tracking (AWS DynamoDB)
- β AWS cloud deployment
- π Mobile app
- π Collaborative coding
- π Live mentorship
- π Certificate generation
- π Community forums
- π AWS Lambda serverless functions
- π AWS CloudFront CDN integration
- Lines of Code: ~50,000+
- Components: 100+
- API Endpoints: 30+
- Supported Languages: JavaScript, Python, C++
- AI Models: AWS Bedrock (Claude 3)
- Cloud Provider: AWS
- Database: AWS DynamoDB
- Speech Services: AWS Transcribe + Polly
Made with β€οΈ by the AdaptEd Team | Powered by AWS βοΈ | Built with Claude 3 π€