Edlib Documentation
website·Indexed 32 days ago
https://docs.edlib.com/Edlib is an open-source platform for creating, sharing, and reusing educational resources. The documentation provides guides for developers on content types, locale codes, and H5P integration, as well as user guides for managing content and setup instructions for the Hub and Content Author.
What's inside Edlib
- Edlib is an open-source application used to create, share, store, and manage rich interactive learning resources. It is specifically designed to handle H5P-based content, allowing these resources to be used within Edlib's own ecosystem (such as Gamilab) or integrated into third-party learning applications. A key feature is the ability to lower the threshold for acquiring external content; for example, a YouTube video can be converted into an Edlib resource simply by providing its URL, making it available in the Edlib content repository for reuse.
Overview of H5P Course Presentation
The H5P Course Presentation content type allows authors to create slide-based learning materials directly in the browser. It is designed as an interactive alternative to PowerPoints, PDFs, or text-based web pages. Presentations consist of a series of slides that can embed multimedia elements (pictures, audio, video clips), slide titles, links, and various quiz types to engage learners in a structured format.Overview of Edlib and its core capabilities
Edlib is an open-source platform designed for creating, sharing, storing, and managing rich interactive learning resources based on the H5P standard. It supports all H5P open-source content types and includes features such as a content explorer for re-using resources, content creation via URL, a Creative-Commons licensing module, authoring workflows, collaboration tools, resource versioning, and language variant creation. It also integrates with third-party audio, video, and image APIs and provides an integrated question bank for quizzes and game-based learning.Overview of Edlib capabilities
Edlib is a platform designed for the creation, management, and distribution of interactive learning resources, with a specific focus on H5P-based content. It provides workflows for content licensing, collaboration between creators, sharing with learners, and tracking student interaction. Edlib is designed to be integrated into third-party learning applications.Understand locale code flow in Content Author
The locale code originates from the
launch_presentation_localeparameter in the LTI request. It is processed through the following layers:- Laravel: Middleware reads the LTI request and stores the locale in the session. It validates if a translation exists for the locale or its ISO 639-1 equivalent; otherwise, it uses the configured fallback locale.
- CA Editor: The
langattribute of the HTML tag is set using the session locale (defaulting to the Laravel locale). The code is converted to lowercase, underscores (_) are replaced with hyphens (-), and codes longer than two characters without a hyphen are converted to ISO 639-1. The React front-end then checks for available translation files, defaulting toen. - H5P Core and Editor: Edlib sets the
languagevalue in theH5PIntegrationJavaScript object by converting the session locale to ISO 639-1 format. ThedefaultLanguageis set toh5p.default-resource-language.
Translate Edlib user interface via Weblate
Edlib uses Weblate for managing its multilingual user interface. Contributors can translate different Edlib projects by visiting the Weblate project overview page. The primary components available for translation include:
- The Hub: The core of Edlib used for searching, filtering, and displaying content. Language files are located at https://weblate.edlib.com/projects/hub/.
- Content Author: The LTI tool for H5P authoring. Language files are located at https://weblate.edlib.com/projects/content-author/. Users can view translation percentages by selecting 'Language' in the menu.
Understand how Edlib calculates H5P maximum scores
Edlib requires the maximum possible score of an H5P activity to allow game designers to set realistic requirements for user progression and branching paths. This maximum score is calculated on the client side via a pre-save script that executes when the H5P is saved in the Content Author, appending the max score to the data sent to the server.
For developers creating new H5P libraries that provide a score, the pre-save script should be included directly in the H5P package. For existing libraries that lack this script, Edlib allows the script to be added after the library has been installed.
Integrate H5P content and libraries in Edlib
Edlib integrates with H5P to provide a wide range of interactive content types. It utilizes the H5P Hub to keep content types synchronized with h5p.org. Users can utilize official H5P libraries from the official H5P GitHub account or install unofficial/forked libraries. For developers creating or installing non-official libraries, refer to the Third-party content documentation for best practices.Discover and reuse content via The Hub
The Hub is a content explorer that allows users to find and reuse existing Edlib content. It provides filtering by H5P content type and tags, and supports sorting by view statistics, creation date, and last edit date.Manage educational questions with the Question Bank
The Edlib Question Bank is a dedicated service for managing tagged and categorized question sets. It supports a 'degree of correctness' property for answers, allowing for nuanced evaluation beyond a simple binary right/wrong result. It can be used to auto-generate H5P Question Sets or game-based learning activities.Integrate LTI tools as Edlib content types
Edlib can be extended with additional content types provided by standard LTI tools. Any tool that supports LTI 1.0/1.1/1.2 and Deep Linking 1.0 is compatible with Edlib. Edlib extends the LTI specification to add additional functionality while remaining compatible with strictly compliant LTI tools.Access the Edlib open-source project
Edlib is an open-source project available on GitHub. The project supports community contributions via GitHub for code and Weblate for translations.# Visit the Edlib GitHub repository https://github.com/cerpus/Edlib