Logo Lanfrica

badrafyf77/smart-darija

Domaine:

natural language processing

Type de record:

datasetsoftware
Créateur:
bad
Hôte:
# Smart Darija — صوتك كيبني المستقبل **Live:** smart-darija.vercel.app An open-source community platform for collecting voice recordings in Moroccan Darija — to build the dataset that Darija AI has been missing. --- ## Why Darija is spoken by 40+ million Moroccans but is nearly invisible in AI. Existing datasets are too small, too noisy, or don't reflect how Moroccans actually speak — mixing Darija with French and English in the same sentence. This project exists to fix that, one recording at a time. --- ## What it does - Presents users with Darija sentences (pure Darija, Darija+French, Darija+English, or all three mixed) - Records audio directly in the browser, encodes it to **16kHz mono WAV** client-side - Uploads recordings to Supabase Storage - Lets the community flag sentences that feel unnatural or incorrect - Admin dashboard to review recordings, manage sentences, and export data - Multilingual UI: Arabic (RTL), French, English - Anonymous sessions — no sign-up required --- ## Tech stack | Layer | Tech | |-------|------| | Framework | Next.js 16 (App Router) | | UI | Tailwind CSS v4, Framer Motion, GSAP, Lucide | | Database | Supabase (PostgreSQL) | | Storage | Supabase Storage (`audio` bucket) | | Audio encoding | Web Audio API (`OfflineAudioContext`) — browser-side WAV encoding, no server dependencies | | Deployment | Vercel | --- ## Dataset format All recordings are stored as **WAV, 16kHz, mono, PCM int16** — the standard format for training speech recognition models (Whisper, wav2vec2, etc.). Sentences are tagged with: - `lang_mix` — `darija`, `darija_french`, `darija_english`, or `darija_french_english` - `topic` — work, family, food, transport, health, education, etc. - `has_phone_number` / `has_id_number` — for digit-reading sentences --- ## Database schema ```sql sentences (id, text, lang_mix, topic, has_phone_number, has_id_number, recording_count, is_removed) recordings (id, sentence_id, audio_url, session_id, created_at …