Islamabad Farmers Market
Challenge
Islamabad Farmers Market had run as a physical Saturday market since 2013, connecting local growers with buyers one morning a week. Everything outside that morning was invisible: no way to browse before arriving, no way for vendors to sell the rest of the week, and no record of what was actually moving.
- A physical Saturday market since 2013
- Invisible the rest of the week: no browsing, no weekday sales
- No record of what was actually moving
Approach
We built three products that share one spine. Customers browse and order across multiple vendors in a single basket. Vendors manage listings and stock, track orders and see their own payout history. Administrators oversee fulfilment, vet vendor applications and answer customer feedback. Around that sits the commercial machinery the market needed to become a business: a commission on every order, a paid vendor application that turns onboarding into revenue, and a hybrid delivery model where orders consolidate at neighbourhood hubs before going out by IFM's own drivers or by courier. Payment had to meet the market where it is, so cash on delivery is a first-class path rather than a fallback, with digital wallets available alongside it.
- Three products on one spine: customer, vendor, admin
- One basket across many vendors
- A commission on every order and paid vendor applications
- Orders consolidate at hubs, then go out by IFM drivers or courier
- Cash on delivery as a first-class path, wallets alongside
What shipped
One API serving three interfaces: a customer storefront, a vendor portal and an admin panel, each on its own subdomain, running live and processing real orders. Multi-vendor cart and checkout, commission calculation, vendor application and compliance workflow, order consolidation and hub routing, courier integration, cash and digital payment handling, and a market pickup option that lets an online order be collected at the Saturday market it came from. Since launch we have run the platform alongside the team: technical maintenance, vendor onboarding and listing support, customer service over WhatsApp, and the operational processes the marketplace runs on.
- One API, three interfaces, each on its own subdomain
- Live and processing real orders
- Multi-vendor checkout, commissions and vendor compliance
- Hub routing, courier integration and Saturday market pickup
- Ongoing maintenance, vendor onboarding and WhatsApp support
- Engine
- NestJS 10 · Node 22 · TypeScript · Prisma 6 · MySQL · JWT + bcrypt · Role-based access · AWS S3 · Nodemailer
- Storefront
- Next.js App Router · React · TypeScript · NextAuth · Zustand · Tailwind CSS
- Vendor portal
- React · Vite · TypeScript · Ant Design · Redux Toolkit · RTK Query · Formik + Yup
- Admin panel
- React · Vite · TypeScript · MUI · MUI X charts · Redux Toolkit · PDF export
- Payments
- Simpaisa gateway · Cash on delivery
- Infrastructure
- AWS EC2 · nginx · GitHub Actions CI/CD · Automated nightly backups
- Technical support
- Vendor support
- Customer support over WhatsApp
- Marketplace operations
Client quote pending: awaiting quote from IFM leadership.
- Listings and stock
- Orders and payouts
