Building Block View

Level 1: System Overview

building blocks l1

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

building blocks l2 web
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

building blocks l2 api
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.