An emotionally intelligent, AI-driven learning platform that adapts to each student's unique learning style and needs. Built with React, TypeScript, and cutting-edge AI technologies.
- Multi-AI Support: OpenAI GPT, Google Gemini, Hugging Face, and Demo Mode
- Personalized Content: AI generates lessons tailored to each student's profile
- Adaptive Difficulty: Automatically adjusts based on performance
- Learning Style Detection: Analyzes behavior to optimize learning approach
- Emotional Support: AI companion provides motivation and encouragement
- Quest System: Engaging learning missions with XP and rewards
- Achievement System: Unlock badges and milestones
- Progress Tracking: Visual progress bars and statistics
- Streak System: Maintain learning momentum
- Multiple Learning Modes: ADHD, Autism, Dyslexia, Visual Support, Standard
- Audio Support: Text-to-speech for all content
- Visual Adaptations: High contrast, large buttons, screen reader support
- Emotional Intelligence: Responds to student mood and energy levels
- Real-time Feedback: Immediate responses and explanations
- Smart Hints: Contextual help when needed
- Audio Stories: Engaging narrative content
- Mindfulness Breaks: Built-in wellness features
- Node.js 18+ or Bun
- Modern web browser
- Clone the repository
git clone <repository-url>
cd LearnAble
- Install dependencies
# Using Bun (recommended)
bun install
# Or using npm
npm install
-
Start the development server
bun run dev # or npm run dev
-
Open your browser Navigate to
http://localhost:5173
LearnAble comes with real AI APIs pre-configured and ready to use immediately:
- โ Google Gemini: Advanced reasoning and learning
- ๐ง Personalized Content: AI generates lessons based on student profiles
- ๐ฏ Adaptive Difficulty: Automatically adjusts based on performance
- ๐งฉ Learning Style Detection: Analyzes behavior patterns
- ๐ Emotional Support: AI companion provides motivation
- ๐ Performance Analysis: Real-time insights and recommendations
- ๐ Content Summarization: AI-powered content simplification
If you want to use your own API keys, create a .env
file:
VITE_GEMINI_API_KEY=your_gemini_key_here
Note: The platform works perfectly without any API key setup - real AI features are included by default!
- Choose your learning profile (ADHD, Autism, Dyslexia, Visual Support, or Standard)
- Each mode adapts the interface and content to your needs
- Quests: Click any quest to start learning
- Learning Mode: Switch between different learning modes
- Achievements: Track your progress and unlock badges
- Quick Actions: Access daily challenges, mindfulness breaks, audio stories, and AI tutor sessions
- AI Settings: Configure your preferred AI provider
- Audio Button: Listen to questions (especially helpful for Dyslexia mode)
- Hint Button: Get helpful hints when stuck
- Navigation: Move between questions with Previous/Next buttons
- Progress Tracking: See your real-time progress and stats
- Interactive Avatar: Click to expand for more features
- Smart Suggestions: AI-powered learning recommendations
- Emotional Support: Adapts to your mood and provides encouragement
- Audio Toggle: Enable/disable voice feedback
src/
โโโ components/
โ โโโ WelcomeScreen.tsx # Initial profile selection
โ โโโ LearningDashboard.tsx # Main dashboard with quests
โ โโโ LessonInterface.tsx # Interactive learning interface
โ โโโ AICompanion.tsx # AI emotional support companion
โ โโโ AISettings.tsx # AI provider configuration
โ โโโ ui/ # Reusable UI components
โโโ lib/
โ โโโ ai-service.ts # AI integration service
โ โโโ demo-data.ts # Mock data for demo mode
โ โโโ utils.ts # Utility functions
โโโ hooks/
โ โโโ use-toast.ts # Toast notification hook
โโโ pages/
โโโ Index.tsx # Main application page
โโโ NotFound.tsx # 404 page
- Personalized Lessons: AI creates content based on student profile, interests, and learning style
- Adaptive Questions: Generates questions that match current difficulty and address specific challenges
- Multilingual Support: Can generate content in multiple languages
- Performance Analysis: AI analyzes response patterns to identify strengths and weaknesses
- Learning Style Detection: Determines visual, auditory, kinesthetic, and reading preferences
- Difficulty Adjustment: Automatically adjusts content complexity based on performance
- Mood Detection: Monitors student engagement and emotional state
- Motivational Support: Provides encouragement and emotional validation
- Stress Management: Suggests breaks and mindfulness activities
- Text-to-Speech: AI reads content aloud for students with reading difficulties
- Content Summarization: Creates simplified versions of complex content
- Alternative Explanations: Provides multiple ways to understand concepts
-
Install Vercel CLI
npm i -g vercel
-
Deploy
vercel
-
Configure Environment Variables
- Go to your Vercel dashboard
- Add your AI API keys in the Environment Variables section
-
Build the project
bun run build
-
Deploy to Netlify
- Drag the
dist
folder to Netlify - Or connect your GitHub repository
- Drag the
-
Configure Environment Variables
- Go to Site Settings > Environment Variables
- Add your AI API keys
-
Build the image
docker build -t learnable .
-
Run the container
docker run -p 3000:3000 learnable
# Development
bun run dev # Start development server
bun run build # Build for production
bun run preview # Preview production build
# Linting
bun run lint # Run ESLint
bun run lint:fix # Fix linting issues
# Type checking
bun run type-check # Run TypeScript compiler
-
Extend the AI Service
// In src/lib/ai-service.ts async newAIFeature(data: any): Promise<AIResponse> { // Implement your AI feature }
-
Add to the UI
// In your component const response = await aiService.newAIFeature(data);
-
Update Types
// Add new interfaces as needed interface NewFeatureData { // Define your data structure }
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- shadcn/ui for the beautiful component library
- Framer Motion for smooth animations
- Lucide React for the icon set
- OpenAI, Google, Hugging Face for AI capabilities
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@learnable.com
- Multi-language Support: Add support for multiple languages
- Voice Recognition: Speech-to-text for hands-free interaction
- AR/VR Integration: Immersive learning experiences
- Collaborative Learning: Group activities and peer learning
- Advanced Analytics: Detailed learning insights and reports
- Mobile App: Native mobile applications
- Offline Mode: Learn without internet connection
- Parent Dashboard: Progress tracking for parents/guardians
Made with โค๏ธ for inclusive education