Logo Lanfrica

HossamTuwano/kamusi-lexicon

Domaine:

natural language processing

Type de record:

software
Créateur:
Hos
Hôte:
An open, structured lexical database for the Swahili language. Building the digital infrastructure for Swahili-to-Swahili lexical representation # Kamusi Lexicon A professional, open-source lexical infrastructure for the Swahili language. ## 🎯 The Mission The goal of this project is to build a high-quality, digital *Kamusi* (dictionary) for Swahili. Unlike many existing resources, this project is **monolingual first**. We believe that the foundation of a strong language infrastructure is a system where Swahili explains Swahili. Our primary objective is to create a structured, machine-readable lexical database that serves as a source of truth for meanings, grammatical usage, and examples, entirely in Swahili. ## 🛠️ Project Architecture This is a monorepo designed for scalability and integration. - **`apps/api`**: A NestJS-powered engine providing the core lexical logic and data management. - **`apps/web`**: The public-facing Swahili Kamusi interface. - **`packages/core`**: The canonical data models and types used across the entire ecosystem. - **`packages/database`**: Schema definitions and SQL bootstrap scripts. ## 📜 The Constitution This project is guided by a strict **Project Constitution** located at `apps/api/CONSTITUTION.md`. The Constitution ensures that the project does not drift into becoming a simple translation tool or an AI experiment. It mandates that: 1. **Swahili is the foundation**: Every entry must exist in Swahili before any translation is added. 2. **Phase-based Growth**: We focus on the monolingual Swahili $\rightarrow$ Swahili experience (Phase 1) before expanding into translations or NLP tools. 3. **Precision over Hype**: We prioritize engineering clarity and lexical accuracy over marketing language. ## 🤝 Contributing We welcome contributions from linguists, software engineers, and Swahili speakers. This is a community-maintained effort. ### How to get started 1. **Explore the Data Model**: Read `packages/core/src/index.ts` to understand how lemmas, senses, and examples are structured. 2. **Local Setup**: - Clone the repository. - Run `npm run install:all` to set up dependen …

Languages