Zolarux Marketplace
Trust-first social commerce for the Nigerian market.

Nigerian social commerce has a trust problem.
Millions of Nigerians buy and sell through WhatsApp, Instagram, and Facebook daily. But there is no protection layer. Buyers send money and hope for the best. Vendors deal with chargebacks and fraud. Disputes have no structured resolution. The entire ecosystem runs on blind trust — and it fails regularly. Zolarux was built to change that.
What I built and owned.
I designed and built the entire platform solo — from the first Figma wireframe to production deployment. Every line of code, every database schema, every UX decision was mine.
How it's built.
Flutter handles all client surfaces. Supabase provides the backend — PostgreSQL for relational data, RLS for security, and real-time for live order updates. Firebase handles push notifications. Next.js powers the web platform. Everything communicates through a REST API layer.
Walking through the product.
The buyer's entry point — the "Buy With Protection" banner immediately communicates the core value proposition. Product categories and featured listings are surfaced below.

The operations dashboard showing platform health — vendor verification rates, product activation, and order pipeline — all in real time.

What was hard. How I solved it.
I needed to build a system that holds funds, releases them on condition, and handles disputes — without ever having built financial software before.
I studied double-entry bookkeeping and broke the escrow flow into three discrete states: HELD, RELEASED, DISPUTED. Each state has explicit triggers and guards. The EscrowPay Engine formalises this further with atomic transactions and idempotency keys to prevent double-processing.
Convincing vendors to trust a new platform with no track record is hard. Convincing buyers to trust vendors on that platform is even harder.
Made verification visible. Every verified vendor has a badge. Every product listing shows verification status. The "Buy With Protection" banner on every page anchors the entire experience around safety. Trust is a design decision, not just a policy.
Getting RLS policies right in PostgreSQL is genuinely difficult. Early in development, I had policies that were too restrictive — the admin dashboard couldn't read vendor data it needed to.
Separated user roles at the database level with distinct policies for buyer, vendor, and service_role. Admin queries use the service role key server-side only, keeping it off the client entirely.
Live and processing real transactions.
Zolarux has been building since 2021 and went public nationally in February 2025 after a full revamp. Built solo — the platform is live, escrow-backed transactions are processing, and growth is steady.