Skip to content
All projects

Gamalon: Online Stores for Small Shops in Sudan

Platform where small shops in Sudan open an online store, manage categories and products, and receive customer orders as ready-made WhatsApp messages. Arabic, right-to-left.

Tech stack

Python Django PostgreSQL Tailwind CSS Docker Caddy gunicorn pytest GitHub Actions

Overview

Role: Sole developer, AI-assisted · Period: Oct 2026

Gamalon (جملون) lets a shop that sells through a Facebook page open a proper online store in minutes. The merchant signs up, verifies their email and is approved by an operator, then adds categories and products with photos, sizes and colors. Customers browse the store, fill a cart and check out; the order is saved and sent to the merchant on WhatsApp as one message with the items, options, quantities and total, and the customer gets a public page for the order. Merchants manage orders through new, confirmed, completed and cancelled. An operator area reviews new merchants and products, with a review policy per merchant: review every product, review until trusted, or trusted.

Architecture

One Django app per domain (accounts, stores, catalog, storefront, cart, orders, merchant dashboard, operator back office), with business rules in each app's services layer and thin views. Session cart, short shareable order codes, uploaded photos processed into full and thumbnail sizes, and rate limits on sign-up, login and checkout. The Arabic right-to-left UI uses logical Tailwind utilities so no layout overrides are needed.

Challenges

Shoppers in Sudan already order through WhatsApp, so checkout had to end in a clear WhatsApp message to the merchant rather than an online payment. Keeping a public marketplace clean needed a review flow for merchants and products that does not slow down sellers who are already trusted.

Outcomes

77 commits over two weeks, 469 automated tests, and a production setup whose deployment, backups and restore are exercised in CI.

Gallery