AI / Real Estate
HAR AI Mode — Conversational Home Search
AI-powered home search for HAR.com: buyers describe what they want in plain English instead of stacking filters, and get real listings back.
- React.js
- React Router
- JavaScript (ES6+)
- REST APIs
- OpenAI API
- Python (FastAPI)
- LLM Prompt Engineering

- Client
- Houston Association of REALTORS® (HAR)
- Duration
- Mar 2025 — Present
- Category
- AI / Real Estate
AI Mode reframes home search on HAR.com as a conversation. Instead of setting six filters and hoping, a buyer types "3 bed near good schools under $400k with a yard" and the system turns that into a precise, structured query against the live listings platform.
The client is a React single-page app served from its own subdomain, talking to a Python service layer (FastAPI behind Uvicorn) that orchestrates the LLM calls, translates natural-language intent into structured search parameters, and streams results back so the interface feels immediate rather than like waiting on a model.
The engineering challenge is less "call an LLM" and more everything around it: guardrails so the model cannot invent listings, deterministic fallbacks when intent is ambiguous, and a latency budget strict enough that a consumer audience does not abandon the page.
Key features
Natural-language home search — plain English in, real listings out
Intent-to-query translation layered over the existing listings search
Streamed responses so results appear progressively instead of all at once
Guardrails and deterministic fallbacks that keep results grounded in real inventory
Mobile-first React SPA with full Open Graph and Twitter card coverage
Shipped in front of a very large consumer audience, not an internal demo
My role
Frontend owner and integration developer for the AI Mode experience.
- Built the React conversational interface, streaming result rendering and mobile layout
- Integrated the client against the FastAPI orchestration service and its LLM-backed endpoints
- Worked on prompt shape and response contracts so the UI could render partial results safely
- Handled empty, ambiguous and failure states so the feature degrades to normal search
Challenges & solutions
LLM latency versus consumer patience. A single blocking request felt broken. Streaming the response and rendering results as they arrive turned a multi-second wait into something that reads as instant.
Hallucinated inventory is unacceptable in real estate. The model never returns listings directly — it only produces structured search intent, which is then executed against the real listings service. Anything the model cannot map confidently falls back to conventional search rather than guessing.
Related projects
Real Estate PlatformHAR.com — Real Estate Platform
Feature work on one of the largest independent real-estate portals in the US — property search, listing pages and the tools Texas realtors use daily.
- React.js
- JavaScript (ES6+)
- Node.js
- GraphQL
- +3
CRM / Mobile AppsPlatinum CRM by HAR — Web, iOS & Android
Real-estate CRM for Texas realtors: a React web portal plus React Native apps shipped on the App Store and Google Play from one shared API.
- React.js
- React Native
- Redux
- Node.js
- +5