Full-Stack E-Commerce Platform with M-Pesa Integration
Building a production-ready online marketplace from scratch requires juggling authentication, payments, search, real-time updates, and an admin dashboard — and most open-source solutions do not support African payment methods natively.
Existing platforms like Shopify, Magento, and WooCommerce do not natively support M-Pesa STK Push — Kenya’s dominant mobile money payment method.
Building authentication, payments, search, caching, real-time updates, and an admin dashboard from scratch is time-consuming and error-prone without a solid reference architecture.
Developers lack an open-source, production-ready e-commerce codebase that combines a modern React frontend with a Node.js/Express backend, Docker orchestration, and comprehensive documentation.
A comprehensive monorepo containing a React + TypeScript frontend (Vite, shadcn/ui, Tailwind CSS) and a Node.js/Express backend with MongoDB, Redis caching, optional Elasticsearch search, Socket.io real-time updates, and native M-Pesa STK Push payment integration — all orchestrated with Docker and documented across 37 markdown files.
Every component designed for a complete shopping experience from product discovery to payment and order management.
Full-text MongoDB search with optional Elasticsearch integration, category/brand/price filtering, sorting, pagination, autocomplete suggestions with debounced input, and dedicated deals, new arrivals, and best sellers pages.
Native Lipa na M-Pesa Online payment with STK Push initiation, callback processing, transaction verification, sandbox/production environment switching, and full order payment status tracking.
Live order status updates, in-app notification center for order changes and system events, and real-time communication between frontend and backend using Socket.io with event-driven architecture.
Full admin panel with order management, product CRUD, inventory tracking with low stock alerts and history audit log, analytics with Recharts data visualization, and user management.
Short-lived access tokens with refresh token rotation, Google and Facebook OAuth via Passport.js, email verification flow, password reset, role-based access (customer/admin), and rate limiting on auth endpoints.
Product list and detail caching with configurable TTL (5 min for lists, 1 hour for details), code splitting with React.lazy on all pages, manual Rollup chunking, and comprehensive MongoDB indexes for query performance.
SwiftCart provides a complete, production-ready e-commerce foundation with native M-Pesa STK Push integration — something no major open-source platform offers out of the box. The monorepo architecture with pnpm workspaces, Docker orchestration, and 37 documentation files make it easy to deploy, customize, and extend. With Redis caching, Elasticsearch integration, comprehensive testing, and a full admin dashboard, SwiftCart serves as both a portfolio-grade reference architecture and a launch-ready marketplace platform.