chazwi ye Sintu yi nqolobane yezilimi zonke za kwaNtu! (Ndebele, Xhosa, Pedi, Sotho, Tswana, Venda, Swati, Zulu)
# Sintu (Chazwi) — Bantu Language Dictionary
A full-stack dictionary and community platform for Bantu languages (Zulu, Sotho, Xhosa, Tswana,Tsonga, Venda0), featuring word comparison, a community feed, prediction rounds, and subscription payments via PayFast.
## Tech Stack
- **Next.js 15** (App Router) + **TypeScript** + **Tailwind CSS**
- **PostgreSQL** + **Prisma ORM**
- **JWT** cookie-based session auth
- **PayFast** payment integration (sandbox mode)
## Features
- 🔍 **Search** — full-text word search across languages
- ⚖️ **Compare** — side-by-side word comparison (tracked)
- 📰 **Feed** — community posts with word mentions
- 🏆 **Rankings** — Word of the Day/Week via weighted event scores
- 🎯 **Predictions** — public prediction rounds; submit your bet
- 💳 **Pricing** — PayFast subscription (sandbox scaffold)
- 💰 **Payouts** — private per-user payout ledger
- 🌐 **Translate** — MVP cross-language word lookup
- 🔧 **Admin** — user management panel (ADMIN role)
## Sintu Laws (Encoding)
- **Law #1**: syllable heuristic tokenizer
- **Law #2**: morpheme concept table
- **Law #3**: vowel spectrum scoring (a/e/i/o/u) — rule-based matrix + consonant-skeleton matching
## Rankings Weights
| Event Type | Weight |
|--------------|--------|
| SEARCH | 1 |
| VIEW | 2 |
| COMPARE | 3 |
| POST_MENTION | 4 |
## Setup
```bash
# 1. Copy env template
cp .env.example .env
# Edit .env with your DATABASE_URL, JWT_SECRET, ADMIN_EMAIL, etc.
# 2. Install dependencies
npm install
# 3. Generate Prisma client
npx prisma generate
# 4. Run migrations
npx prisma migrate dev
# 5. Seed starter data (Zulu/Sotho/Xhosa + sample entries)
npx prisma db seed
# 6. Start dev server
npm run dev
```
## Environment Variables
See `.env.example` for the full list. Key variables:
| Variable | Description |
|-----------------------|--------------------------------------------------|
| `DATABASE_URL` …