Hadiqati
Bilingual Arabic/English online store for a gardening brand — seeds, herbs and garden tools priced in dinars, cash-on-delivery checkout, and an admin back office where each product page is built from modular content blocks and incoming orders are reviewed.
- My Role
- Full Stack Developer
- Timeline
- Apr 2026
- Status
- Shipped
Hadiqati is the online shop of a gardening brand: a catalogue of seeds, herbs and garden tools priced in dinars, with a checkout built around cash on delivery. The storefront is fully bilingual, serving the same catalogue in Arabic and English, with right-to-left layout on the Arabic side.
The build splits into two surfaces: the customer storefront and an admin back office. Product pages are not fixed templates — each one is assembled from modular content blocks, so the structure of a page can differ from one product to the next without touching code. Incoming cash-on-delivery orders land in that same back office, where the team reviews each one.
What it does
Block-based product pages
Each product page is composed in the admin from modular content blocks, so page structure can vary per product instead of following one fixed template.
Cash-on-delivery checkout
Orders are placed in dinars and paid on delivery, with no online card payment required.
Arabic/English storefront
The entire shop runs in both Arabic and English, with right-to-left rendering on the Arabic side.
Built with
Frontend
Shared types between the storefront and the admin mean the shape of a product's content blocks and of incoming orders is checked at compile time on both sides.
Utility classes and Tailwind's RTL variants make it practical to keep one set of components that renders correctly in both the Arabic right-to-left and English left-to-right layouts.
Data
Products, their content blocks and cash-on-delivery orders are relational data, and PostgreSQL keeps every order tied to real products with the integrity guarantees a shop's records need.