Logo Lanfrica

ethioacers/ethio-acers

Domain:

education

Record type:

software
Creator:
eth
Host:
A web app for Ethiopian high school students (Grade 9–12) to practice national exam questions and track their daily study streak. # Ethio Acers MVP web app for Ethiopian high school students (Grade 9–12) to practice national exam questions and track daily study streaks. ## Tech Stack - **Framework:** Next.js 14 (App Router) - **Language:** TypeScript - **Styling:** Tailwind CSS - **UI:** Shadcn-style components (Radix + Tailwind) - **Backend + Auth:** Supabase - **Deployment:** Vercel ## Setup 1. **Install dependencies** ```bash npm install ``` 2. **Environment variables** Copy `.env.local.example` to `.env.local` and set: - `NEXT_PUBLIC_SUPABASE_URL` — your Supabase project URL - `NEXT_PUBLIC_SUPABASE_ANON_KEY` — your Supabase anon key 3. **Supabase** - Create a project at supabase.com. - In the SQL editor, run the schema and RLS from the PRD (tables: `profiles`, `subjects`, `questions`, `sessions`, `attempts`). - Add RLS for `subjects` if you use it: ```sql alter table subjects enable row level security; create policy "Authenticated read" on subjects for select using (auth.role() = 'authenticated'); ``` - Run the seed SQL to create subjects and sample questions. - Create test users in Authentication (or seed via SQL) — no signup flow in MVP. 4. **Run locally** ```bash npm run dev ``` Open localhost. Log in with a test account, then use Dashboard and Practice. ## Pages - **/** — Home (link to login) - **/login** — Email + password login (Supabase Auth) - **/dashboard** — Streak, today’s status, 7-day calendar, “Start Practice” - **/practice** — Subject + grade, 10 questions, score summary, “Log Session” ## Deploy (Vercel) ```bash npm install -g vercel vercel ``` Add `NEXT_PUBLIC_SUPABASE_URL` and `NEXT_PUBLIC_SUPABASE_ANON_KEY` in Vercel → Settings → Environment Variables.

Languages