We provide tech jobs to Nigerians
# Naija Tech Jobs π³π¬
A vetted job board for Nigerian tech talent β **Nigeria-based roles + remote jobs at international companies**. Every listing is checked by hand (the anti-scam angle is the moat), each job is its own SEO page, and employers pay via Paystack.
This repo is organised so **each part maps to a week** in the launch plan. Build it in order; ship something usable by the end of Week 2.
**Stack:** Next.js 14 (App Router) Β· Supabase (Postgres + RLS) Β· Tailwind Β· Paystack Β· Resend Β· Vercel. Every service has a free tier that carries you well past launch.
---
## Quick start (do this once)
```bash
# 1. Install dependencies
npm install
# 2. Create your env file and fill it in
cp .env.example .env.local
# 3. Run the dev server
npm run dev # β
localhost
```
You need free accounts at **Supabase**, **Paystack** (test mode is fine to start), and **Resend**. Get the keys, paste them into `.env.local`.
---
## ποΈ Week 1 β Foundation & database
**Goal:** app runs locally, database is live with the right schema.
1. Create a Supabase project β copy the URL + anon key + service-role key into `.env.local`.
2. In the Supabase dashboard, open **SQL β New query**, paste in `supabase/schema.sql`, and run it. This creates the `jobs`, `subscribers`, and `payments` tables.
- The two decisions baked in here are the ones that make the whole board work: **`job_type`** (`national` / `remote_international` / `remote_anywhere`) and **`currency`** (NGN vs USD/GBP/EUR). These power the "local vs global" filter.
- Row-level security is on: the public can only *read approved jobs*. Everything else goes through the server.
3. (Optional but recommended) Run `supabase/seed.sql` to drop in 5 sample jobs so the board isn't empty while you build.
4. Run `supabase/click-tracking.sql` too β it adds the `job_clicks` table and the stats function that power apply-click analytics (see Extras).
5. Run `supabase/share-tracking.sql` β adds the `job_shares` table and upgrades th β¦