Zovita+ — Online Pharmacy
2026 · Full-stack · Laravel + React · E-commerce
Care, delivered with calm — a pharmacy that notices what you need.
Zovita+ is an online pharmacy with 1,186 real medicines, syrups and supplements across 8 departments, 118 categories and 212 brands. Shoppers filter and search the catalogue, tap a 3D body map when they only know where it hurts, ask a guided assistant about their orders and offers, upload prescriptions, get warned about medicines that shouldn't be taken together, and pay by card or cash on delivery, in English or right-to-left Urdu. Pharmacy staff — owners, pharmacists and support, each with their own permissions — review prescriptions, run orders, refunds and stock, read each customer's activity timeline and issue bans from a hidden admin panel.

- 1,186
- real products
- 22
- database tables
- 201
- automated tests
- 100
- Lighthouse a11y · SEO
Began in March 2026 as flat PHP pages and was rebuilt from an empty project in September 2026: Laravel 12 and React 19 joined by Inertia 2, on a MySQL schema of 22 domain tables and 27 foreign keys. It ships a 3D body map sculpted in code as a signed distance field, rule-based personal offers priced by one function for the bag and the charge, a row-locked idempotent checkout, card payments confirmed only by signed webhooks, drug-interaction warnings, refill reminders, staff roles with authenticator-app two-step sign-in, 24-hour prescription auto-accept, three-level bans that see through Gmail aliases, server-side rendering, a nonce CSP, ClamAV-scanned uploads, and 145 PHPUnit plus 56 Playwright tests, with Lighthouse 100 for accessibility, best practices and SEO.
- 01
A store that notices: every visitor (guest or customer) builds a quiet profile of views, visible time, bag adds and purchases, and six explainable rules turn it into time-limited personal offers, capped at 15% and redeemed exactly once inside the checkout transaction.
- 02
Stock that can't be oversold and a price that can't drift: products locked in id order, a conditional decrement that refuses to go below zero, one-time checkout tokens, and the same Pricing function used for the bag preview and the order.
- 03
Medicine safety built in: the bag checks every product's active ingredients against 24 well-established interaction rules (two paracetamol products, blood thinner + NSAID, sildenafil + nitrate…), serious ones must be acknowledged and are shown to the pharmacist, and regular buyers get a refill reminder before they run out.
- 04
Built for pharmacy staff, not developers: a 404-for-everyone-else admin panel with "Today at Zovita" to-do cards, plain-language help on every heading, prescription review with 24 h auto-accept, customer timelines and a ban wizard — all usable on a 320 px phone.
Screens · Zovita+
Inside the build.
Shoppers
Home — a 3D pill hero, search and shortcutsPick your seat, watch the trailer, and never share it with a stranger.
