Back to projects
Noor Boutique
Professional

Noor Boutique

Affaq Ahmed · Full Stack Engineer · ZySoftec · Web App / June 30, 2025

  • Next.js
  • React
  • Node.js
  • Express
  • MongoDB
  • Redux
  • i18n

Overview

Noor Boutique is an e-commerce platform built for a boutique based in Libya. I built the complete system end to end — a customer storefront plus three internal panels: Admin, POS, and Delivery Driver — all served by a single backend. The entire platform is bilingual (Arabic & English) with full RTL and LTR support across every surface.

My Role & Contributions

I built Noor Boutique from scratch through to delivery as the full stack engineer, delivering all three panels along with the backend:

  • Bilingual architecture — implemented an i18n-style architecture with full RTL/LTR support across all panels, and designed the database so that user-entered content is stored in both languages.
  • Cart system — built the cart using Redux, kept in sync with the database.
  • RBAC — implemented role-based access control on the Admin Panel.
  • Inventory system — built a complete inventory system supporting multiple variants (colours and sizes).
  • Payments — integrated a third-party Libyan banking payment method.
  • UI design — contributed to the interface design.

Key Features

  • Customer storefront — bilingual shopping experience.
  • Admin Panel — management with role-based access control.
  • POS — point-of-sale for in-store operations.
  • Delivery Driver Panel — for managing deliveries.
  • Full bilingual support — Arabic and English with RTL/LTR throughout.
  • Variant-based inventory — products with colour and size variants.
  • Redux cart — cart state coordinated with the backend.

Tech Stack & Architecture

  • Frontend: Next.js and React, with Redux for state and an i18n-style architecture for bilingual content.
  • Backend: Node.js / Express with MongoDB — the schema was designed to store user-input content in both Arabic and English.
  • Payments: a third-party Libyan banking system.
  • Surfaces: a customer storefront plus Admin, POS, and Delivery Driver panels, all sharing one backend.

Challenges & Solutions

  • Bilingual, bidirectional UI — supporting Arabic and English meant building every one of the four surfaces for both RTL and LTR, and modelling the database so user-generated content is captured in both languages rather than just translated labels.
  • Variant inventory — representing products across multiple colours and sizes required a flexible inventory model.
  • Cart consistency — keeping the Redux-driven cart in sync with the database so the basket stays correct across sessions.
  • One backend, four surfaces — a single backend had to serve the storefront, Admin, POS, and Delivery Driver panels cleanly.

Timeline

April 2025 – June 2025 · 3 months

Links

There's no public production link, but a frontend staging preview is available at nb-frontend-zysoftec.vercel.app.