Real estate marketplace / Case study
TheProperty
Role-aware Django marketplace for reviewed property listings in Bangladesh.
Overview
A server-rendered real-estate marketplace connecting buyers, sellers, agents, and staff through controlled listing, discovery, and inquiry workflows.
01 / Context
The problem
A property marketplace must let buyers discover relevant listings while giving sellers and agents controlled tools for publication and follow-up. Private identity documents and unpublished inventory must remain outside public access.
My role
I built the marketplace foundation and role-specific dashboards, completed the buyer journey, introduced buyer, seller, and agent application boundaries, and refactored business logic into selector and service layers. I also added production configuration, schema safeguards, tests, and operating documentation.
02 / Engineering
Technical decisions
Email-based accounts use explicit buyer, seller, agent, and staff roles. Server-side checks protect each workspace rather than relying on hidden interface controls.
Properties move through draft, review, published, rejected, sold, rented, and archived states. Atomic transition services and immutable status history make moderation decisions traceable.
Agent identity files use private storage with permission-checked, audited downloads. PostgreSQL, Redis, S3-compatible storage, WhiteNoise, health checks, and structured logging form the production baseline.
03 / Delivery
What the project delivers
The first-release workflow supports reviewed sale and rent listings, property search, buyer favorites, questions and viewing requests, seller listing management, agent assignments, role dashboards, and staff moderation. Payment and commission workflows remain outside the current release scope.
Key features
Django 5.2 LTS and PostgreSQL
Buyer, seller, agent, and staff workspaces
Moderated property publication lifecycle
Private identity-document storage
Redis rate limits and production operations
