Uplearn is an innovative educational platform that integrates Moodle LMS with Anki's spaced repetition system, powered by AI to optimize learning paths and address the Dunning-Kruger effect in education. The platform uses real-time performance data to create personalized learning experiences and bridge the gap between perceived and actual knowledge.
- AI-Driven Content Generation: Utilizes DeepSeek R1 and OpenAI models to create personalized educational content
- Adaptive Learning Paths: Automatically adjusts study plans based on student performance
- Moodle Integration: Seamless connection with Moodle LMS for comprehensive course management
- Anki Integration: Leverages spaced repetition for optimal knowledge retention
- Real-time Analytics: Monitors student progress and identifies knowledge gaps
-
Frontend (Next.js 14)
- Server Components for enhanced performance
- App Router for intuitive navigation
- Shadcn UI components with Tailwind CSS
- Zustand for state management
- React Query for data fetching
-
Backend-for-Frontend (Next.js API)
- Orchestrates service interactions
- Handles data transformation
- Manages AI model integration
-
LMS Backend (Moodle)
- PostgreSQL database
- REST API with token authentication
- Custom plugin (tnadvancemanage) for optimized operations
-
Anki Integration
- AnkiConnect middleware for local API access
- Cloud-compatible fallback system
- Real-time synchronization
- Containerized deployment with Docker
- Horizontal scalability
- Error monitoring via Sentry
- Distributed caching system
- Docker and Docker Compose
- Node.js (version specified in .nvmrc)
- Python for automation scripts
- Anki application installed
- AnkiConnect installed
- Clone the repository
- Set up environment variables
- Run Docker Compose
- Initialize Moodle configuration
- Start the Next.js application
/
├── doc/ # Documentation
├── moodle-uplearn/ # Moodle configuration and plugins
├── site-uplearn/ # Next.js frontend application
└── requirements.txt # Python dependencies
- Automated content generation
- Personalized study plans
- Pattern recognition in learning behavior
- Anki deck synchronization
- Performance tracking
- Adaptive intervals
- Course organization
- Assessment tools
- Progress tracking
- Set up local development environment
- Install dependencies
- Configure API endpoints
- Run development servers
- In progress
- Container orchestration
- Environment configuration
- Monitoring setup
Contributions are welcome! Please read our contributing guidelines for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
- Moodle Community
- Anki Development Team
- DeepSeek and OpenAI for AI models