Logo Lanfrica

jomboi8/davida-app-backend

Domain:

natural language processing

Record type:

software
Creator:
jom
Host:
This is a backend application developed to replace the serveless backend of davida mobile app # davida-backend ## What Davida is Kidaw'ida (Dawida) is a Bantu language spoken by the Taita people of southeastern Kenya. It has little formal documentation — no comprehensive dictionary, most of it living only in older speakers' memory rather than anywhere written down. Davida is a mobile app that turns that into a crowdsourced, community-verified lexicon: anyone can add a word, propose a meaning in English or Kiswahili, record its pronunciation or share a photo of something culturally significant with a caption read aloud in Kidaw'ida. Other contributors vote on proposed meanings, so an entry converges on a verified definition instead of staying one person's guess and a "language health" dashboard tracks coverage across the whole community rather than just one phone. See Screenshots below for what that looks like in the app. This repo is the backend that data lives in — Go + PostgreSQL, built for the Flutter app above (not in this repo). The shipped app currently talks directly to a serverless backend from the client; this is a ground-up rewrite of that backend into a proper layered API, designed to replace it. See `db/migrations/000001_init_schema.up.sql` for the full data model. **Status:** every layer is wired end-to-end and the core flows have been exercised for real (signup → JWT → create entry → propose meaning → vote → stats → sync → upload, all against `docker compose up`) — but see Not yet implemented for what's still required before a real cutover (account deletion, password reset, rate limiting and more). **Not yet deployed or wired into the shipped app**, which still talks directly to the original serverless backend while this migration is in progress. ## Screenshots The Davida Flutter app (not in this repo) — the client this backend is being built to replace the serverless backend layer for: | Home | Browse entries | Word details | |:---:|:---:|:---:| | | | | | **Home** — Overview and contribution entry point | **Browse** — Search and …