Kolibri developer documentation
These docs are for software developers wishing to contribute to Kolibri. If you are looking for help installing, configuring and using Kolibri, please refer to the User Guide.
What is Kolibri?
Kolibri is the offline learning platform from Learning Equality. It is available for download from our website. The code is hosted on Github and MIT-licensed.
You can ask questions, make suggestions, and report issues in the community forums. If you have found a bug and are comfortable using Github and Markdown, you can create a Github issue following the instructions in the issue template.
Table of contents
- Contributing
- Getting started
- Tech stack overview
- How To Guides
- Installing pyenv
- Using pyenv-virtualenv
- Using nodeenv
- Rebasing a Pull Request
- Reviewing a Pull Request
- Running another Kolibri instance alongside the development server
- Running Kolibri with local Kolibri Design System
- Preview Kolibri on a mobile device
- Working with URLs and API Endpoints
- Provisioning and Seeding Dev Data
- Multi-Agent / Multi-Worktree Setup
- Testing
- Code Quality
- Every concern lives at exactly one layer
- Prefer the simplest implementation that works
- Preserve existing comments
- Interfaces stay small
- Tests assert behavior, not implementation
- Identical code is only duplication if it changes for the same reason
- Do not store what can be computed
- At system boundaries, generate shared representations
- Let errors propagate
- Tell, don’t ask
- Whoever allocates a resource is responsible for releasing it
- Prefer composition over inheritance
- Externalize values that change independently of code
- Follow existing naming conventions and project vocabulary
- Do not weaken existing tests
- Do not rely on undocumented behavior
- Frontend architecture
- Backend architecture
- Server/client communication
- Development workflow
- Build system and workflow
- Release process
- npm packages
- Internationalization
- Manual testing & QA
- Release Notes
- 0.19.4
- 0.19.3
- 0.19.2
- 0.19.1
- 0.19.0
- 0.18.4
- 0.18.3
- 0.18.2
- 0.18.1
- 0.18.0
- New Contributors
- 0.17.4
- 0.17.3
- 0.17.2
- 0.17.1
- 0.17.0
- 0.16.0
- 0.15.12
- 0.15.11
- 0.15.10
- 0.15.9
- 0.15.8
- 0.15.7
- 0.15.6
- 0.15.5
- 0.15.4
- 0.15.3
- 0.15.2
- 0.15.1
- 0.15.0
- 0.14.7
- 0.14.6
- 0.14.5
- 0.14.3
- 0.14.2
- 0.14.1
- 0.14.0
- 0.13.3
- 0.13.2
- 0.13.1
- 0.13.0
- 0.12.9
- 0.12.8
- 0.12.7
- 0.12.5
- 0.12.4
- 0.12.3
- 0.12.2
- 0.12.2
- 0.12.1
- 0.12.0
- 0.11.1
- 0.11.0
- 0.10.3
- 0.10.2
- 0.10.1
- 0.10.0
- 0.9.3
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.0
- 0.7.2
- 0.7.1
- 0.7.0
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.3
- 0.5.2
- 0.5.1
- 0.5.0
- 0.4.9
- 0.4.8
- 0.4.7
- 0.4.6
- 0.4.5
- 0.4.4
- 0.4.3
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.3
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.0
- 0.1.1
- 0.1.0 - MVP
- 0.0.1 - MMVP