Parapharmacie Si Ahmed.
A full-stack e-commerce platform built for a parapharmacy in Sidi Bel Abbès, serving the Algerian national market across all 58 wilayas. The system covers the full purchase flow — catalogue, cart, multi-step checkout, delivery carrier selection, and card payment (Edahabia, CIB) — backed by a PIN-protected admin dashboard with real-time revenue analytics, inventory alerts, order management, a blog CMS, and customer review moderation. Built and shipped under Novera in 8 weeks with a two-person team.
Context
Parapharmacie Si Ahmed is a physical pharmacy in Sidi Bel Abbès with an established local clientele. The brief was to digitise sales entirely — no prior online presence, no existing tech stack — and deliver something the pharmacist could operate alone, without technical support, from day one.
The constraint that shaped every decision: payment at delivery only (no payment gateway at launch), national shipping to all 58 wilayas, and a non-technical admin who needed to manage stock, process orders, and read revenue data from a phone.
What was built
The platform splits into two distinct surfaces: a public storefront and a back-office dashboard.
The storefront covers catalogue browsing with category, subcategory, price, and rating filters; a product detail page with image gallery and zoom; a persistent cart (localStorage + DB for authenticated users); and a three-step checkout collecting client info, wilaya-based delivery carrier selection with live pricing, and a full order summary before confirmation. Payment is handled at delivery — Edahabia and CIB card options are available at the door through the carrier.
The admin dashboard is PIN-gated for analytics access. It surfaces revenue charts (daily/weekly/monthly/yearly), order status breakdown, top-10 bestsellers by revenue and by units, and per-category revenue. Order management includes full CRUD, status transitions with notes, one-click WhatsApp/call contact buttons, receipt printing, and CSV export. Product management handles image galleries, per-product minimum stock thresholds, and low-stock alerts. The delivery module manages three carriers (Yalidine, ZR Express, Noest Express) with individual per-wilaya pricing tables and bulk-update support.
A blog CMS and customer review moderation system (with verified-purchase badges) were delivered as priority-2 features within the same timeline.
Architecture
The stack is a clean client-server split: React 18 + Vite + Tailwind CSS on the frontend, Node.js + Express + Sequelize on the backend, PostgreSQL as the database. Authentication is JWT-based with role separation (Super Admin / Admin). File uploads go through Multer with local storage. All delivery pricing is stored as a JSONB object keyed by wilaya code, which made bulk-update and per-wilaya override both straightforward.
Gallery.
The harness teaches you what the model is doing. Build it first; the rest is implementation.


