Building Block View
Level 1: System Overview
Contained Building Blocks
| Building Block | Description |
|---|---|
Web Application |
NextJS/TypeScript frontend providing server-side rendered pages for property search, listing, user dashboards, and map interactions. Serves as the primary user interface for all personas. |
API Services |
Python backend exposing RESTful APIs for property management, user management, search operations, and external service integrations. |
Search & Recommendation Engine |
Handles property search with natural language processing, geospatial queries, fuzzy matching, and ML-powered property recommendations. |
Workflow Engine (Windmill) |
Orchestrates multi-step business processes such as property listing approval, payment processing, verification workflows, and notification chains. |
Notification Service |
Manages user alerts for saved searches, property updates, transaction status, and communication between buyers/sellers and agents. |
PostgreSQL (Supabase) |
Primary data store for property listings, user profiles, transactions, reviews, and market data. Includes row-level security. |
File Storage (Google Cloud Storage) |
Stores property images, virtual tour assets, documents, and user uploads in GCS buckets with Cloud CDN-backed delivery. |
Level 2: Web Application Decomposition
| Module | Description |
|---|---|
Property Search Module |
Advanced search with filters (price, location, bedrooms, etc.), natural language query parsing, and location-based search. Handles input like "properties less than 30 minutes from Kotoka airport." |
Property Listing Module |
Property creation and editing with image uploads, pricing, description, and location tagging via Ghana Post GPS or Google Plus Codes. |
Map & Location Module |
Google Maps and Mapbox integration, geofencing (draw on map or enter coordinates/city), location autocomplete for Ghana, default view centered on Accra. |
User Dashboard Module |
Manages saved searches, property alerts, favorites, purchase/rental history, reviews, and profile settings. |
Agent Dashboard Module |
Agent-specific tools for listing management, client communication, performance analytics, and lead tracking. |
Auth Module |
Supabase-based authentication with user registration, login, and session management. |
Market Analytics Module |
Real estate market data visualization, price trends, neighborhood comparisons, and investment analysis tools. |
Virtual Tour Module |
3D property tours and virtual walkthroughs integrated with property listings. |
Level 2: API Services Decomposition
| Component | Description |
|---|---|
Property API |
CRUD operations for property listings, image management, and property verification status. |
User API |
User profile management, preferences, saved searches, and review/rating operations. |
Search API |
Full-text search, geospatial queries, natural language query parsing, fuzzy matching, and ML-based recommendations. |
Location API |
Geocoding, Ghana Post Digital GPS address decoding (with and without dashes), Plus Code resolution, and distance calculations. |
Payment API |
Transaction processing, payment gateway integration, PCI DSS-compliant payment handling. |
Analytics API |
Market data aggregation, price trend analysis, property performance metrics for agents. |
Integration API |
Connectors for Ghana Lands Commission, Ghana Home Loans, and other external partner services. |
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.