2026 · FULL-STACK DEVELOPER (SOLE DEVELOPER)
Needlon — Marketplace Platform
FLAGSHIP · CASE STUDY · CODE ON GITHUB · NO LIVE DEMO
A multi-app marketplace monorepo: customer storefront, seller app and a standalone admin app, with orders, shipments, delivery executives and platform controls.
- Next.js
- TypeScript
- Node.js
- Turborepo
- PostgreSQL
- Drizzle ORM
- Tailwind CSS
NEEDLON
What was built
Needlon is the largest system Arman has built: one Turborepo monorepo holding three Next.js apps and shared packages, built around the full order lifecycle — catalogue and variants, orders, shipments, delivery assignment, seller verification and platform administration. It is presented here honestly as portfolio and interview material: complex, real engineering, parked as a business. It is not a live production SaaS.
- 01Orders, shipments and delivery-executive assignment with transactional roster handling.
- 02Shiprocket carrier adapter as a typed, fail-closed layer.
- 03Seller verification and suspension, with suspended accounts blocked at login.
- 04Admin controls for executives, delivery partners and rate cards, categories, commission and support inbox.
- 05Seller dashboard with real aggregates against the live database schema.
Inside the build
The real areas of the product, as built — routes, screens and workflows, verified from the project's own code and README.
Client storefront
Catalogue, variants, cart and checkout for customers.
Seller app
Inventory, pricing, shipments and a dashboard with real aggregates.
Admin app
Executive roster, delivery partners, rate cards, verification, commission and support.
Delivery flow
Order → shipment → executive assignment → delivered, verified end to end.
Architecture
apps/client — customer storefront
apps/seller — seller app
apps/admin — standalone admin app (port 3002), own login with admin-role gate
packages/db (@needlon/db) — Drizzle schema, 108 tables on a fresh database
packages/modules and packages/ui — shared domain logic and UI
Order flow: order → shipment → delivery-executive assignment → delivered
Decisions & trade-offs
Standalone admin app, not an admin section
Admin lives in its own app (apps/admin) with its own login and role gate, instead of a section inside the seller app — a structural choice that keeps seller and platform concerns separate.
Fail-closed external integrations
The Shiprocket adapter and payment gateways fail closed with typed errors instead of silently substituting values. An earlier shipment bug — a partner id substituted when no shipping method existed — was fixed to fail loudly and honour the explicit method.
Shared packages over duplicated code
Database, domain modules and UI are shared packages so the three apps cannot drift apart on schema or core flows.
Outcomes
- Delivery and admin programme verified on a fresh database: 108 tables, 12/12 test suites passing, zero `any` in source at the time.
- Seller dashboard fixed against the real schema (buyerId, variant-level inventory and pricing) and verified with a real login and real aggregates.
- Order-flow integration verified end to end to DELIVERED, including the shipment-method fix.
- Work merged to main in PRs #44–#47, including the standalone admin extraction.
No invented users, revenue or performance numbers are claimed here. What is listed above is what was built and verified.
What I would do differently
Fix the type baseline and add a test runner before adding more features, and validate with one real seller workflow end to end before scaling — scope grew faster than the build/typecheck baseline.
More projects
DEC 2024 – MAR 2025
QuirkCart
A comprehensive full-stack e-commerce ecosystem for customers and administrators — storefront, cart, product management and an analytics dashboard in one Next.js app.
View details →
NOV 2024 – DEC 2024
Dev Overflow
A full-stack developer Q&A platform with voting, tagging, global search and AI-generated answers — built on Next.js, Clerk, MongoDB and Google Gemini.
View details →
MAR 2025 – APR 2025
VidPulse
A modern video-sharing platform for creators and viewers — Mux streaming, a creator Studio, playlists, history and trending, on Next.js, tRPC and Drizzle.
View details →