Learn and write professional .9ja and .py (Python) codes in popular Nigeria indigeneous languages (Hausa, Yorùbá, Igbo, Fulfulde), with English and French. 9CE is a full-featured PyQt5 code editor built for digital inclusion. Code in your mother tongue..
Nigeria's first desktop IDE for programming in Hausa, Yorùbá, Igbo, Fulfulde, English, and French.
Formally presented at the National Engineering Conference, Abuja (2022)
Why 9CE? • Features • Installation • Screenshots • Roadmap • Contributing
Over 200 million Nigerians speak Hausa, Yorùbá, Igbo, and Fulfulde as first languages — yet every mainstream programming tool assumes fluency in English. For millions of talented young people, especially in underserved northern communities, the English-language barrier arrives before the logic barrier. They never find out whether they could have been programmers.
9CE removes that barrier.
9CE is a full-featured desktop code editor whose entire interface (menus, dialogs, tooltips, error messages) is available in six languages: Hausa, Yorùbá, Igbo, Fulfulde, English, and French.
It was born from a simple conviction: the language you dream in should not disqualify you from building software. The project's founder learned to code using BBC BASIC, a language designed to make computing accessible to ordinary British schoolchildren in their own language. 9CE extends that same courtesy to learners, and professionals.
Beyond education, 9CE is part of a broader mission: digital inclusion as community safety. Giving young people in northern Nigeria a genuine pathway into technology creates economic opportunity where recruitment into violence often preys on the absence of one.
| Language | Region | Status |
|---|---|---|
| 🟢 Hausa | Northern Nigeria, Niger, Ghana | Full UI |
| 🟢 Yorùbá | Southwestern Nigeria, Benin | Full UI |
| 🟢 Igbo | Southeastern Nigeria | Full UI |
| 🟢 Fulfulde | Sahel region, West Africa | Full UI |
| 🟢 English | International | Full UI |
| 🟢 French | Francophone West Africa | Full UI |
Planned regional editions follow the 9CE naming convention using ISO country codes — e.g., BjCÉ for Benin Republic.
- High-performance syntax highlighting — debounced rehighlighting, chunked background processing, and dirty-block tracking keep large files responsive
- Intelligent autocomplete powered by a marisa-trie index with case-insensitive matching
- Jedi-powered hover tooltips — hover any variable or function for instant documentation
- Adaptive variable scanning that scales its scheduling to file size
- Find & Replace overlay with a modern, non-blocking inline UI
- Automatic code detection — 9CE recognises code in any editor window via its built-in
CodeFileDetector
- Full interface localisation in six languages — not just translated menus, but a coherent experience
- Console-to-GUI converter — transforms Python console programs into PyQt5 GUI applications, letting students see their work come alive as real desktop apps
- Native
.debpackages for Debian/Ubuntu - AppImage builds for cross-distro Linux compatibility
- Windows builds (coming soon)
# latest version sudo dpkg -i 9jacoder-1.0.1_amd64.deb # general instruction sudo dpkg -i 9jacoder-<version>_amd64.deb # resolve dependencies if needed sudo apt-get install -f
# latest version chmod +x 9jacoder-1.0.1-x86_64.AppImage # general instruction chmod +x 9jacoder-<version>-x86_64.AppImage ./9jacoder-<version>-x86_64.AppImage # execute ./9jacoder-1.0.1-x86_64.AppImage
9CE is built in Python with PyQt5, chosen deliberately: the same stack students learn in is the stack their editor is written in. A curious learner can read the source of the very tool they code with.
| Component | Technology |
|---|---|
| GUI framework | PyQt5 |
| Code intelligence | Jedi |
| Autocomplete index | marisa-trie |
| Packaging | PyInstaller, dpkg, AppImage |
- Indigenous-language keyword aliasing (write
idaninstead ofifin Hausa mode) - Classroom mode with teacher/student sync
- Offline documentation packs in all six languages
- Plugin system for community language packs
9CE welcomes contributors of all kinds — you don't need to write code to help:
- 🌍 Translators & linguists — improve or extend our Hausa, Yorùbá, Igbo, and Fulfulde label dictionaries
- 🐍 Python/Qt developers — see open issues tagged
good first issue - 🎓 Educators — pilot 9CE in your classroom and tell us what breaks
- 📖 Writers — help with documentation in any supported language
Please read CONTRIBUTING.md before opening a pull request.
9CE is developed by Artmanntech Solutions, a Lagos-based technology company founded by Arthur IbukunOluwa Arokhamoni, building indigenous-language technology for digital inclusion across West Africa.
"The first programming language I ever loved spoke to me plainly. Every Nigerian child deserves the same."
| Channel | Details |
|---|---|
| 🌐 Website | 9jacoder.org |
| ✉️ General enquiries | [email protected] |
| 🤝 Partnerships, sponsorship & press | [email protected] |
| 🎓 Schools & classroom pilots | [email protected] |
| Arthur IbukunOluwa Arokhamoni | |
| 🐦 X (Twitter) | @ArokhamoniAh |
| @9jaCoderCodeEditor |
📍 Artmanntech Solutions, Lagos, Nigeria
See LICENSE for details.
⭐ If 9CE's mission resonates with you, star this repository — it helps others find us.
Nà gòdiyā • Ẹ ṣé • Daalụ • A jaaraama • Thank you • Merci