Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Mafoko is a progressive web app (PWA) that provides access to multilingual glossaries, dictionaries, and term banks, with a focus on South Africa's official languages. It supports language preservation and low-resource NLP research by allowing users to search terms, download resources for offline use, and contribute feedback to a central repository

Notifications You must be signed in to change notification settings

COS301-SE-2025/Mafoko

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Mafoko: A PWA for Multilingual Lexicons, Term Banks, and Glossaries

banner

FigmaFigmaFigmaFigmaFigmaFigma

Project Description

Mafoko is a progressive web application (PWA) developed for the COS 301 Capstone project at the University of Pretoria. It serves as a unified platform for accessing, browsing, and contributing to multilingual glossaries, dictionaries, and terminology banks. Designed with an offline-first approach and scalable architecture, Marito aims to support South Africa’s low-resource languages and empower linguistic research, NLP development, and language preservation.


Demo Video


Demo 4 Documentation


Git Structure & Branching Strategy

Repository Type: Monorepo

Structure:

/frontend       β†’ React + TypeScript UI  
/backend        β†’ Python FastAPI backend  
/Documentation  β†’ Design and documentation  
/.github        β†’ GitHub Actions workflows and configuration  

GitFlow Branching Model

  • main – Stable, production-ready code
  • develop – Active development integration branch
  • feature/* – New features and enhancements
  • release/* – Pre-release testing and stabilization
  • hotfix/* – Critical fixes applied directly to production

This structure ensures clean separation between environments, supports parallel feature development, and maintains a stable deployment process. All code changes are merged into develop through pull requests, and releases are carefully tested before merging into main.


Velox Team Members

Name Role Student Number Description LinkedIn CV Link Email
Hayley Dodkins Fullstack Engineer 21528790 I’m a software engineer with a passion for coding, and an interest in systems programming. LinkedIn No CV [email protected]
Zainab Abdulrasaq Project Manager 22566202 I'm a Computer Science student passionate about data security, database systems, and cybersecurity. I'm eager to keep learning, take on new challenges, and use technology to solve real-world problems. LinkedIn No CV [email protected]
Arnaud Strydom Integration Engineer 23536013 I am a third-year BSc Computer Science student at the University of Pretoria, majoring in Software Engineering. My passion for software development, web development (net-centric development), cybersecurity, and artificial intelligence drives me to be a dedicated and diligent worker. I am committed to expanding my knowledge and improving my skills every day. Striving for excellence is one of my core values. I aim to master the technical aspects of software engineering while also developing essential soft skills such as problem-solving, critical thinking, and effective communication. A great software engineer must understand and address user needs, work collaboratively with team members, and clearly articulate ideas and solutions. My dedication to continuous learning, desire to excel, and commitment to making a lasting impact set me apart. I am eager to take on new challenges, collaborate with like-minded individuals, and contribute to the ever-evolving field of software development. LinkedIn View CV [email protected]
Palesa Thabane Services Engineer / Business Analyst - I'm a Data Science and Cybersecurity enthusiast with experience in distributed computing and backend development. LinkedIn No CV [email protected]
Eugen Vosloo Data Engineer 20445696 I'm a BSc Computer Science student with a focus on Data Science and a passion for backend development. LinkedIn No CV [email protected]

Demo Videos


Research and Publications

Research was conducted for the Mafoko project.

πŸ“„ Research Paper


Badges

MIT License Build Status Code Coverage Requirements GitHub Issues Uptime Robot

About

Mafoko is a progressive web app (PWA) that provides access to multilingual glossaries, dictionaries, and term banks, with a focus on South Africa's official languages. It supports language preservation and low-resource NLP research by allowing users to search terms, download resources for offline use, and contribute feedback to a central repository

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6