Project
E-Commerce Platform
A full-stack e-commerce platform for the Bangladeshi market, with local payments, order management, and customer support.
Features
01Storefront
Home, shop, product detail, categories, collections, and deals pages, each with dedicated search and cart routes
Product detail pages carry variants, galleries per variant, and customer Q&A
Product search is full-text on PostgreSQL, ranked by relevance and filtered as you browse, with every search term logged for the admin analytics
Cart and wishlist live server-side, and guests get their own carts through a session header
Checkout works for guests, with public order tracking at /orders/track
Ratings come with helpfulness voting, and the support side moderates reviews
CMS pages resolve from a slug catch-all and are managed from the admin
Cookie consent and a light or dark theme toggle round it off
02Payments
Stripe Checkout with signature-verified webhooks, and refunds for the full amount or part of it
Cash on delivery comes with an admin mark-paid action, and stock commits once the order does
bKash, Nagad, and bank-transfer rails sit alongside the card checkout
Itemised PDF invoices with the line labels in Bengali
Coupons and shipping methods are managed from the same panel
03Admin panel
An analytics dashboard tracks the most-viewed, most-searched, and most-ordered products, plus the view-to-cart-to-order funnel
CRUD over products, categories, brands, banners, coupons, menus, and CMS pages
Orders management with invoice views, a returns screen, and status updates
Customer and user pages guarded by admin and super-admin roles
Theme and appearance editors, backed by settings that live in the database
An email template editor and a browser for the audit log
04Backend & integrations
The NestJS REST API handles JWT access and refresh tokens, Google OAuth, and Firebase identity verification
The Gemini customer chat stays grounded in live product data through function-calling tools
Emails queue through Bull on Redis, covering the order lifecycle, verification, and refunds, retries included
The media pipeline produces Sharp image variants and blur placeholders behind S3 and Cloudinary adapters
Rate limiting, an audit-log interceptor, Prometheus metrics, and Swagger docs sit on top
05Engineering
A Turborepo monorepo holds the Next.js app, the NestJS API, and shared type and config packages
Jest unit tests run against a mocked Stripe, while Playwright specs walk the shopping, auth, and admin flows
The deploy is Dockerised, with health checks and smoke tests running in CI
