Ecommerce Template
Modern ecommerce template built with Next.js 16, React 19, Drizzle, Better Auth, Supabase, and Stripe.
Connect pet buyers and sellers with AI-powered matching
CommerceTypeScript · PLpgSQLGitHub @Hemmy01OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
AI-matched pet marketplace for Nigeria with escrow payments, built with Next.js and Supabase
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
A pet marketplace for Nigeria that matches buyers to listings with a deterministic
scoring algorithm, and protects payments with an escrow flow: funds are held after
payment and only released once the buyer confirms handover (or an admin resolves a
dispute).Read the full README ↗A pet marketplace for Nigeria that matches buyers to listings with a deterministic scoring algorithm, and protects payments with an escrow flow: funds are held after payment and only released once the buyer confirms handover (or an admin resolves a dispute).
lib/matching.ts).lib/escrow.ts,
lib/paystack.ts).lib/forecast.ts), plus PDF/Excel reports for admins.Next.js 16 (App Router) · React 19 · TypeScript · Tailwind CSS 4 · Supabase (Postgres, Auth, Storage, Realtime) · Paystack · Jest
Prerequisites: Node.js 20+, a Supabase project.
npm install
cp .env.example .env.local # then fill in your Supabase credentials
npm run dev
Open http://localhost:3000.
Run the SQL files in supabase/migrations/ in order (01 → 24) via the Supabase
SQL Editor. 01_schema.sql is the core schema; the rest layer on features in
the order they were built.
Only the three Supabase variables are required to boot the app — see
.env.example for the full list. Everything else (Paystack, email, SMS, push,
Groq) degrades gracefully: the related feature runs in a no-op/demo mode until
its keys are set.
To create your first admin account, register normally, then in the Supabase SQL Editor:
update profiles set role = 'administrator' where email = '[email protected]';
app/ Next.js App Router
api/ 24 REST route handlers, one domain per folder
(pages)/ buyer/seller/admin dashboards, listings, messages, etc.
components/ React components, grouped by domain
auth/ layout/ listings/ payments/ compare/ modals/ ui/
lib/ Business logic and integrations
matching.ts match scoring algorithm
escrow.ts escrow settlement (race-safe)
forecast.ts demand forecasting / price hints
paystack.ts email.ts sms.ts push.ts groq.ts external integrations
supabase.ts Supabase client setup (browser + server)
types/ Shared TypeScript types
supabase/migrations/ SQL schema, in application order
__tests__/ Jest unit tests
npm test # run once
npm run test:watch
npm run lint
Live at petmatchai-nine.vercel.app, deployed from this repo's main branch.
To deploy your own copy: import the repo on Vercel, set the environment
variables from .env.example, and deploy. If using Paystack in live mode,
point its webhook at /api/payments/webhook.