Real Estate Platform · Mobile + Web
2026
A Saudi real-estate marketplace for First Tower Company — a Flutter client app, a React admin dashboard and a NestJS backend, with pre-publication review, advertiser verification and wallet-based promotion.
- Role
Full-Stack Engineer — backend, admin dashboard and mobile app, deployed to a live staging server
- Year
2026
- Status
- Staging
- Stack
- Flutter
- NestJS
- TypeScript
- PostgreSQL
- Prisma
- Redis
- React
- Ant Design
- Docker
- Caddy

Overview
Manazel is a Saudi real-estate platform built for First Tower Company: a client app for browsing and posting listings, an admin dashboard for running the marketplace, and a backend that connects them. The screenshots come from a build running on demo data, hosted on a live staging server.
Problem
A fragmented property market needs a platform that reviews a listing before it goes public, verifies who is advertising, and gives the operator full control. Advertisers also need a way to lift their listing in the ranking in exchange for credit from their wallet.
Solution
Nothing is published until a reviewer approves it, and location metadata is stripped from every uploaded photo. Advertisers move through verification levels, and listings, comments and users can all be reported. Promotion is paid from a wallet: top up a balance, spend it to raise a listing's rank, with invoices and full management from the dashboard.
Architecture
The backend is a NestJS (TypeScript) service split into independent modules with a hexagonal architecture, on PostgreSQL through Prisma with Redis for caching. The admin dashboard is a responsive React + Ant Design app in Arabic and English. The client app is a single Flutter codebase for Android, iOS and the browser, fully in Arabic. Everything is deployed with Docker behind Caddy, which provisions HTTPS automatically.
Features
Backend
- Independent modules on a hexagonal architecture.
- Image processing that removes location metadata.
- Listing review, reports and advertiser verification.
- Wallet, payments, invoices and listing promotion.
- Terms publishing and notifications.
Admin dashboard
- Listing review and promotion control.
- Catalog seeded with 13 regions, 94 cities and 179 districts.
- Fine-grained permissions and an audit log.
- Invoice and quotation templates.
- Brand identity and seasonal themes: six ready identities or a custom color, with a live preview and a one-click reset. The app has its own identity in a separate tab, so changing it never alters the dashboard.
Client app
- Browse, search, filter and save listings.
- Post a listing with photos and ordering.
- Messages, wallet and promotion.
- Notifications, account and verification.
- Colors, name and logo driven from the dashboard.
Results
- 390+ unit tests on the backend and 65 on the app.
- Running over HTTPS on a live server behind a firewall.
- Two separate identities: the dashboard and the app.
Project status
Staging on a live server; not yet launched to the public. Payments and verification messages use a sandbox provider until real keys are connected. App-store release and the public web version are still pending.
12Gallery
Select any screen to open it full size.
01Client App06
02Admin Dashboard06
Work

Multi-tenant B2C Platform · 2026
Spare Parts Marketplace
A ledger-first, multi-tenant marketplace connecting merchants and customers for automotive spare parts — NestJS backend, three Next.js dashboards, one Flutter app.

Warehouse & Logistics Platform · Web · 2026
Carry Go — Warehouse Portal
A bilingual warehouse operations portal — orders, attendance, payroll and embedded ERPNext accounting from a single interface.