TechPick NG - Product discovery, reviews, price comparison & affiliate platform for technology products in Nigeria. Next.js + Supabase.
# TechPick NG (tech-pick-marketplace)
Product discovery, reviews, price comparison, deals, and multi-store affiliate platform for technology products — built for Nigeria first, architected to expand categories and retailers.
**Stack:** Next.js 14 · TypeScript · Tailwind CSS · Supabase (PostgreSQL, Auth, RLS) · Vercel-ready
Repository:
github.com
---
## Features
### Public
- Home (search, categories, trending, deals, articles)
- Search results
- Category pages (reusable template)
- Product pages (specs, editorial analysis, multi-store offers, affiliate CTAs)
- Price comparison with last-checked timestamps
- Deals, Articles, Reviews hubs
- Compare scaffold, Store pages, Profile, About, Contact
### Admin (RLS + server checks)
- Login at `/admin/login`
- Dashboard metrics
- Products, editorial reviews, articles, stores, offers
- AI Research workspace (approve before publish)
- Community moderation
- Analytics event model
### Data model
Normalized schema: products independent of stores; many offers per product; editorial vs community reviews separated; research runs + source attribution; analytics events.
---
## Quick start
### 1. Clone & install
```bash
git clone
github.com
cd tech-pick-marketplace
npm install
```
### 2. Supabase project
1. Create a project at supabase.com
2. In SQL Editor, run in order:
- `supabase/migrations/001_initial_schema.sql`
- `supabase/migrations/002_rls_policies.sql`
- `supabase/seed.sql` (demo data — labeled as demo; affiliate URLs are placeholders)
3. Enable Email auth (Authentication → Providers)
### 3. Environment
```bash
cp .env.example .env.local
```
Fill in:
```
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
SUPABASE_SERVICE_ROLE_KEY=
NEXT_PUBLIC_SITE_URL=
localhost
```
Never commit real secrets.
### 4. Become the first admin
1. Sign up a user via Supabase Auth (or your app auth flow).
2. In SQL Editor:
```sql
IN …