Search Knowledge

© 2026 LIBREUNI PROJECT

LibreUni Project Overview

LibreUni Project Overview

LibreUni is a free learning platform built around plain content, static rendering, and interactive components. Lessons are written as MDX, courses are described with small JSON files, and the app turns that material into searchable course pages, lesson pages, exports, exercises, diagrams, and code labs.

The project is intentionally contributor-friendly. A useful change can be a new lesson, a better explanation, a fixed diagram, a more focused quiz, a clearer code sample, or an accessibility improvement.

Repository Map

Code
skinparam backgroundColor transparent
skinparam componentStyle rectangle

package "LibreUni" {
folder "apps/main" {
  [Astro pages] as pages
  [MDX lessons] as lessons
  [Course JSON] as courses
  [Interactive components] as components
}

folder "tests" {
  [Smoke tests] as smoke
  [Accessibility tests] as accessibility
  [UX checks] as ux
}

folder "docs" {
  [Authoring rules] as rules
  [PlantUML notes] as puml
}
}

courses --> pages : course cards
lessons --> pages : lesson routes
components --> lessons : embedded labs
tests --> pages : verify rendered app
docs --> lessons : author guidance
LibreUniapps/maintestsdocsAstro pagesMDX lessonsCourse JSONInteractive componentsSmoke testsAccessibility testsUX checksAuthoring rulesPlantUML notescourse cardslesson routesembedded labsverify rendered appauthor guidance

Click the diagram to open the overlay. Large diagrams should keep their proportions, scale down when needed, and expand cleanly on demand.

What Contributors Usually Touch

AreaCommon filesGood contribution shape
Course metadataapps/main/src/content/courses/*.jsonClear title, description, icon, color, image
Lesson contentapps/main/src/content/lessons/**.mdxFocused lesson with examples, checks, and references
Interactive widgetsapps/main/src/components/*Reusable feature with stable props
Build and teststests/**, tools/**Verifies behavior without slowing normal authorship
Documentationdocs/**, README.mdHelps the next contributor make fewer guesses

Contribution Mindset

A good LibreUni contribution is small enough to review, rich enough to teach, and boring enough to maintain. Prefer one clear idea per lesson section. Use visual and interactive elements when they make the concept easier to understand, not as decoration.

Choosing a First Change

A new contributor notices that a lesson explains state machines only in prose. They can either rewrite the entire UML course, add one focused diagram and quiz to the state-machine lesson, or start by changing the homepage layout.

Which first contribution is easiest to review and most aligned with the project?

Quick Check

What is the main authoring format for LibreUni lessons?