Project index
Verified liveDecision Intelligence2026

JHB Property Intelligence 

MLS ingestion, market-model training, three-stage deal scoring, AI enrichment, maps, watchlists, and export in one operating system.

Architecture knowledge graph15 connected nodes
System coreJHB Property IntelligenceDecision Intelligence
01 / AcquireMLS data enters as an auditable run
02 / LearnHistorical behavior becomes local market models
03 / ValueActive listings receive defensible comparables
04 / DecideThree engines separate facts, market, and deal fit
05 / ExplainAI enrichment stays behind deterministic controls
06 / OperateReview, feedback, and export close the loop
Next.js
Node.js
Express
MySQL
Anthropic
OpenAI
Google Sheets
Docker
Architecture stage Technology dependencyMove pointer to inspect depth

System brief

Decision intelligence for real-estate underwriting

Engineering focus
Core pipeline, scoring, AI, and product engineering
Domain
Decision Intelligence
Delivery window
2026
System state
Verified live
44markets represented in the live product
27K+properties tracked in the live product
3separate decision engines

The engineering move

Complex behavior, made operational.

Constraint

The product problem

Raw MLS exports are inconsistent, duplicate-prone, and weak evidence for an investment decision. The system had to normalize property identity, learn local market behavior, select defensible comparables, and still explain every recommendation to a human underwriter.

System

The architecture decision

The platform separates historical training from active scoring. Historical sales are streamed, normalized, paired into flips, filtered for contamination, and aggregated into ZIP, county, and global models. Active listings then pass through factual guardrails, market valuation, and deal economics before AI services enrich remarks, condition, rehab range, and the final narrative.

Outcome

The operating result

Investors receive a ranked, inspectable pipeline instead of another spreadsheet. Every Pursue, Underwrite, Watch, or Reject decision retains its run, model, comparables, assumptions, feedback, and export trail.

Delivered capability

What the system actually does.

01

Streaming MLS CSV ingestion with resumable run state

02

Property identity resolution and historical flip detection

03

ZIP, county, and global market-model training

04

Comparable selection, ARV, rehab, and target-buy analysis

05

Three-engine scoring with human-readable reason codes

06

LLM-assisted remarks analysis with a persistent cache

07

Map search, saved views, watchlists, and review feedback

08

Google Sheets export and server-sent progress updates

Full system flow

The Mermaid diagram, rendered.

The interactive graph above is the executive view. This is the detailed service, data, control, and delivery path reviewed from source.
Mermaid / system architecture120%

Rendering the reviewed system flow

Production architecture

A concrete path through the system.

Each stage below comes from the reviewed source tree, routes, services, infrastructure, and deployment evidence.
  1. 01
    Acquire

    MLS data enters as an auditable run

    Master and active CSV uploads are parsed as streams, content-hashed, normalized, and attached to cancellable pipeline runs.

    ExpressPapa ParseSSE
  2. 02
    Learn

    Historical behavior becomes local market models

    Identity resolution, flip pairing, contamination filters, and aggregations build evidence at ZIP, county, and global levels.

    Node.jsMySQLMarket models
  3. 03
    Value

    Active listings receive defensible comparables

    Geographic, property-class, recency, and quality gates select comps before calculating ARV and rehab-sensitive economics.

    Comp engineGeospatial filtersARV
  4. 04
    Decide

    Three engines separate facts, market, and deal fit

    Truth checks, market-model output, and configurable investor thresholds combine into a reasoned investment disposition.

    Engine 1Engine 2Engine 3
  5. 05
    Explain

    AI enrichment stays behind deterministic controls

    Anthropic and OpenAI enrich property condition, remarks, rehab range, and narrative while schemas and cache boundaries contain variance.

    AnthropicOpenAIJSON schemas
  6. 06
    Operate

    Review, feedback, and export close the loop

    The Next.js console exposes maps, watchlists, saved views, configurations, verification queues, and Google Sheets delivery.

    Next.jsGoogle SheetsDocker

Engineering judgment

The decisions behind the delivery.

Deterministic before generative

Core valuation and deal gates remain inspectable code. Models add context and narrative, not unbounded authority.

Configuration is versioned state

Scorer and active-listing configurations can be drafted, promoted, archived, and tied back to individual runs.

Feedback is product data

Reviewer decisions, exclusions, overrides, and verifier lessons feed the next model and rule iteration.

Technical constellation

01Next.js02Node.js03Express04MySQL05Anthropic06OpenAI07Google Sheets08Docker
Jenkins Property Intelligence production sign-in screen
Deployment evidence

This is running software.

Live product and source reviewed on 2026-07-16. The public link is provided as evidence, while protected product areas correctly remain behind authentication.

Open JHB Property Intelligence

Continue through the project archive

Next caseAI Visibility Platform