For an open source tool for creating courses, the first results are instructure/canvas-lms (Canvas LMS is a self-hostable learning management system that provides comprehensive tools for authoring and structuring course content, including multimedia support, quiz creation with QTI import, grading, and student progress tracking, which directly matches your needs), moodle/moodle (Moodle is a full-featured learning management system that excels at authoring and structuring course content with lessons, multimedia, quizzes, grading, and progress tracking, and is designed for self-hosting, making it an ideal match for this search) and ilias-elearning/ilias (ILIAS is a full-featured open-source LMS that includes comprehensive course authoring, lesson sequencing, multimedia support, quiz creation, SCORM export, and progress tracking, making it a strong match for this intent). microsoft/iot-for-beginners and rust-lang/rustlings round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Find the best open-source course authoring tools. We ranked top GitHub repositories by activity and features to help you compare and pick the right one.
Canvas LMS is a self-hostable learning management system that provides comprehensive tools for authoring and structuring course content, including multimedia support, quiz creation with QTI import, grading, and student progress tracking, which directly matches your needs.
Moodle is an open-source learning management system (LMS) that provides a complete platform for creating, delivering, and managing online courses, assessments, and learner progress. Its architecture combines database-driven content storage, a plugin-based modular extension system, hierarchical role-based access control, and a RESTful API layer, all built around multi-tenant course isolation that keeps each course's activities, users, and grading structures separate. The platform distinguishes itself through a comprehensive assessment and grading system that manages question banks, applies fle
Moodle is a full-featured learning management system that excels at authoring and structuring course content with lessons, multimedia, quizzes, grading, and progress tracking, and is designed for self-hosting, making it an ideal match for this search.
GitHub repository for official ILIAS release branches and development branches (trunk)
ILIAS is a full-featured open-source LMS that includes comprehensive course authoring, lesson sequencing, multimedia support, quiz creation, SCORM export, and progress tracking, making it a strong match for this intent.
This project is an educational resource and virtual environment designed to teach the fundamentals of embedded systems and internet-connected device development. It provides a structured curriculum that guides learners through the essential skills required to program, connect, and integrate hardware components. The platform distinguishes itself by offering virtual hardware emulation, which allows users to test electronic circuits and device logic within a digital environment. This simulation capability enables students to practice building and testing projects without the requirement for phys
This repository is an IoT curriculum (a set of pre-built lessons), not a tool for authoring and structuring your own course content; it provides content rather than the means to create or customize courses.
Rustlings is a command-line learning tool designed to build language proficiency through a structured, interactive curriculum. It functions as a practice-oriented platform where users master syntax and core concepts by resolving compilation errors within a sequence of small, incremental code exercises. The environment distinguishes itself by utilizing a compiler-driven feedback loop that parses error messages to provide targeted hints for fixing logic and syntax issues. Progress is managed through a file-based system where users modify incomplete source templates, which are then verified agai
Rustlings is an interactive coding tutorial for learners of the Rust language, not a tool for authoring and structuring online course content—it lacks lesson authoring, multimedia support, quiz creation, and export standards.
Developer Roadmap is a community-driven platform that provides structured, graph-based learning paths for software engineering. It serves as a comprehensive knowledge repository where technical domains are organized into visual sequences to guide professional skill acquisition and career growth. The project distinguishes itself through a collaborative ecosystem that enables users to contribute roadmaps, curate industry best practices, and maintain professional profiles. It integrates diagnostic assessment frameworks to evaluate technical proficiency, helping developers identify knowledge gaps
This project is a collection of structured learning roadmaps for software engineering, not a tool for authoring and structuring your own online courses — it provides predefined paths rather than letting you create and sequence custom lessons, assessments, or multimedia content.
Typebot is a visual chatbot builder and conversational platform designed for lead generation and data collection. It provides a drag-and-drop workflow designer that converts visual nodes into structured conversation logic, allowing users to build interactive forms and chatbots with conditional routing. The platform is designed as a self-hosted conversational infrastructure, enabling the deployment of the entire application stack on private servers using Docker and PostgreSQL. This allows for complete control over data storage and server maintenance. The system integrates with external servic
Typebot is a visual chatbot and form builder focused on lead generation, not a course authoring tool — it lacks dedicated lesson sequencing, assessment creation, SCORM export, and learner progress tracking, so it only partially overlaps with the requested features.
Gollum is a Git-powered wiki engine and content management system that provides a web-based interface for editing and organizing files stored in a Git repository. It functions as a self-hosted documentation tool, using a Git-based storage backend to manage page content and track version history. The system is characterized by a pluggable markup rendering architecture that converts multiple markup languages and specialized notations into HTML. It supports a wide array of rich content, including mathematical typesetting, BibTeX bibliographies, and diagrams rendered via Mermaid. Broad capabilit
Gollum is a Git-powered wiki engine for documentation and content management, not a dedicated course authoring tool—it lacks the lesson structuring, quizzes, SCORM export, and progress tracking that online course authoring requires.
PeerTube is a decentralized, open-source video hosting platform that enables users to operate independent, interoperable servers. By utilizing the ActivityPub protocol, it connects these servers into a global, federated network where users can follow channels, discover content, and interact across different instances. The platform is designed to function as a self-hosted video content management system, providing a community-driven alternative to centralized media services. What distinguishes PeerTube is its hybrid approach to content delivery and infrastructure management. It integrates peer
PeerTube is a self-hosted video hosting platform, not a course authoring tool — it lacks lesson structuring, assessments, and SCORM export, so it cannot author and structure online course content.
This project is an interactive programming curriculum and educational system designed to teach computer science and software engineering. It provides a structured set of courses and professional roadmaps focused on backend engineering, DevOps, and systems fundamentals. The platform is distinguished by an AI-powered coding tutor that provides Socratic guidance and contextual hints to help students find solutions independently. It features a browser-based code sandbox using WebAssembly to eliminate local environment setup, alongside automated test-based grading and spaced-repetition logic to re
This repository is a pre-built interactive programming curriculum and educational system, not a general-purpose tool for authoring and structuring your own online course content; it delivers specific courses rather than letting you create them.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| instructure/canvas-lms | 6.4K | Ruby | agpl-3.0 | |
| moodle/moodle | 7.2K | PHP | GPL-3.0 | |
| ilias-elearning/ilias |
| 487 |
| PHP |
| GPL-3.0 |
| microsoft/iot-for-beginners | 16.8K | Jupyter Notebook | mit |
| rust-lang/rustlings | 63.3K | Rust | MIT |
| kamranahmedse/developer-roadmap | 357.4K | TypeScript | NOASSERTION |
| baptistearno/typebot.io | 10K | TypeScript | NOASSERTION |
| gollum/gollum | 14.3K | Ruby | MIT |
| chocobozzz/peertube | 14.5K | TypeScript | agpl-3.0 |
| bootdotdev/curriculum | 3.4K | — | — |