Logo Lanfrica

syrusklaide/Learn-Rwanda

Domaine:

natural language processingeducation

Type de record:

project
Créateur:
syr
Hôte:
# Speak Rwanda — prototype with Supabase backend A Kinyarwanda language-learning app concept: tourists unlock Rwandan destinations, flip word/phrase cards, get a pronunciation score, and earn badges. ## What's real vs. simulated - **Real**: authentication (email/password), destinations & cards stored in Supabase, progress/scores/badges persisted per user, row-level security so each user only sees their own progress. - **Simulated**: the pronunciation score itself is a random number for demo purposes. Wiring in real speech scoring (e.g. an ASR model + phoneme alignment against the Kinyarwanda word) is the next real engineering step — see `src/main.js`, function `handleScoreAttempt`. ## Setup 1. Copy every file in this project into a new GitHub repo, keeping the folder structure (`src/` stays a folder). 2. `npm install` 3. Copy `.env.example` to `.env` — the values already point at the Supabase project set up for this app (schema + seed data are already live there). 4. `npm run dev` to run locally, `npm run build` to produce a deployable build. ## Database The schema (`destinations`, `cards`, `user_progress`, `pronunciation_scores`, `user_badges`) and starter content for Greetings, Volcanoes, and Akagera are already applied to the connected Supabase project. Lake Kivu exists as a destination row but has no cards yet — add them once you have the real word list from the voice recording, e.g.: ```sql insert into cards (destination_id, glyph, kinyarwanda_word, english_word, fact, sort_order) values ((select id from destinations where slug = 'kivu'), '🐟', 'Ifi', 'Fish', '...', 1); ``` ## Next steps worth planning for - Real pronunciation scoring (this is the hard, valuable part of the product) - Image assets instead of emoji placeholders for each card - Password reset / magic-link sign-in as an alternative to password auth - Admin view for adding destinations/cards without writing SQL by hand

Languages