DEV Community

Cover image for I Built an AI Architectural Blueprint & Civil Feasibility Engine with $0 Paid APIs (Here's How)
Rolan Lobo
Rolan Lobo

Posted on

I Built an AI Architectural Blueprint & Civil Feasibility Engine with $0 Paid APIs (Here's How)

"Hey ChatGPT, design me a house."

ChatGPT: "Sure! Here is a lovely 3-bedroom house where the only toilet is inside the oven, the front door opens into an elevator void, and the staircase ascends directly into the ceiling slab." 🫠

If you’ve ever tried using modern GenAI to generate architectural plans or evaluate a piece of real estate, you know the pain. Large Language Models are brilliant poets and witty coders, but when it comes to spatial geometry, civil building codes, and structural physics, they hallucinate like a sleep-deprived toddler playing with Minecraft blocks.

Meanwhile, the traditional workflow of buying a plot of land and getting it vetted is practically medieval:

  1. Pay $1,500 for a topological survey.
  2. Wait 3 weeks for an environmental and flood risk assessment.
  3. Consult a structural engineer to cross-reference seismic code tables (IS 1893).
  4. Pay an architect $3,000 for CAD drafts that end up violating municipal setbacks (NBC 2016).
  5. Wonder why your bank account is weeping before a single brick has been laid.

I decided to solve this. Alone. In code.

Meet BuildWise AI β€” an open-source, sovereign platform where you drop a single pin on an interactive 3D globe and receive an enterprise-grade civil engineering dossier, structural risk analysis, CPWD cost estimate, and a generative, constraint-checked architectural blueprint in under 3 seconds.

Oh, and the entire geospatial pipeline costs exactly $0.00 in paid API fees. No Google Maps billing, no Mapbox metered charges, no commercial satellite subscriptions.

Here is the deep dive into how it works under the hood β€” from the math of Spatial Constraint Satisfaction Problems (CSP) to 5-Factor MCDA Land Suitability, and how ancient Indian Vastu Shastra turned out to be an exquisite bioclimatic optimization matrix.


⚑ The 3-Second Magic: What Happens on Click?

Here is what happens the instant a user clicks a coordinate on the map:

[ User Drops Pin on Map ]
         β”‚
         β”œβ”€β”€β”€β–Ί 1. Sliding-Window Rate Limiter (30 req/min)
         β”‚
         β”œβ”€β”€β”€β–Ί 2. Parallel Telemetry Ingestion (All Free / Open-Access!)
         β”‚        β”œβ”€β”€ Digital Elevation Model (USGS / Copernicus GLO-30 DEM)
         β”‚        β”œβ”€β”€ Microclimate & Wind Vectors (Open-Meteo Forecast)
         β”‚        β”œβ”€β”€ Seismic History (USGS FDSN Earthquake Catalog)
         β”‚        └── Hydrological Flow (Copernicus GloFAS River Discharge)
         β”‚
         β”œβ”€β”€β”€β–Ί 3. Deterministic Civil Calculation Core
         β”‚        β”œβ”€β”€ 5-Factor Weighted MCDA Land Suitability Matrix
         β”‚        β”œβ”€β”€ IS 1893:2016 Zone & Peak Ground Acceleration (PGA)
         β”‚        β”œβ”€β”€ NBC 2016 Automated Setbacks & Plinth Envelopes
         β”‚        β”œβ”€β”€ CPWD Delhi Schedule of Rates (DSR) Cost Estimator
         β”‚        └── Vastu Purusha Mandala 9-Zone Bioclimatic Vector
         β”‚
         β”œβ”€β”€β”€β–Ί 4. Generative Blueprint Engine (CF-HSA Slicing Tree)
         β”‚        β”œβ”€β”€ Vertical Cores & Wet Plumbing Shafts Locked (G to G+3)
         β”‚        β”œβ”€β”€ Topological Invariants Enforced (Leaf Rule, Central Box)
         β”‚        └── L1–L14 Deterministic Validation Gate
         β”‚
         └───► 5. Synthesis & Vector Delivery
                  β”œβ”€β”€ Ultra-Crisp Interactive SVG Blueprint (Pan/Zoom/Layers)
                  └── Print-Ready 174mm Vector PDF Dossier (ReportLab)
Enter fullscreen mode Exit fullscreen mode

Total round-trip time: ~2.4 to 3.1 seconds. πŸš€

Let’s look at the UI in action:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ πŸ—ΊοΈ BuildWise AI                                      [ πŸ›°οΈ Satellite ] [ πŸ“ 3D ]β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                      β”‚  πŸ“‹ SITE FEASIBILITY DOSSIER         β”‚
β”‚               [ PIN ]                β”‚  ──────────────────────────────────  β”‚
β”‚        12.9716Β° N, 77.5946Β° E        β”‚  🎯 Overall Suitability: 84/100      β”‚
β”‚                                      β”‚  🌊 Flood Inundation Risk: LOW (0.12)β”‚
β”‚                                      β”‚  ⚑ Seismic Zone: II (Z = 0.10)       β”‚
β”‚                                      β”‚  πŸ’° Est. Plinth Cost: β‚Ή 2,450 / sq.ftβ”‚
β”‚                                      β”‚  ──────────────────────────────────  β”‚
β”‚                                      β”‚  [ πŸ“ GENERATE BLUEPRINT (G+1) ]     β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  ✨ Architectural Blueprint (Level G):                                       β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚   POOJA ROOM (NE)       β”‚    LIVING & FOYER (N)    β”‚  KITCHEN (SE)    β”‚  β”‚
β”‚  β”‚   4.2 mΒ² [LEAF NODE]    β”‚    24.5 mΒ² [HUB NODE]    β”‚  11.2 mΒ² [VENT]  β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  β”‚   STAIRCASE CORE        β”‚   CENTRAL SPINE          β”‚  DINING ROOM     β”‚  β”‚
β”‚  β”‚   (Vertical Anchor)     β”‚   (Brahmasthan Open)     β”‚  14.0 mΒ²         β”‚  β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  β”‚   MASTER BEDROOM (SW)   β”‚   ATTACHED BATH (W)      β”‚  COMMON BATH     β”‚  β”‚
β”‚  β”‚   18.5 mΒ² [PRIVATE]     β”‚   4.8 mΒ² [EXTERIOR WALL] β”‚  3.6 mΒ² [LEAF]   β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
Enter fullscreen mode Exit fullscreen mode

πŸ’Έ The "Zero-Paid API" Stack: Surviving Without Google Maps

Most SaaS apps slap the Google Maps JavaScript API on their frontend and call it a day β€” until their monthly bill arrives with 4 zeroes at the end.

For BuildWise AI, I made a strict rule: Zero Paid APIs. Every geospatial query, satellite tile, elevation reading, and climate metric must run on open-data infrastructure.

Here is the exact provider matrix:

Feature The Expensive Commercial Way The BuildWise Zero-Cost Way Open Source / Data License
Base Vector Tiles Mapbox GL ($$$) OpenFreeMap (Liberty & Dark styles) OpenMapTiles / ODbL
Satellite Imagery Google Satellite ($$$) Esri World Imagery (Maxar/USGS) Free for Public Web Apps
3D Topographic Relief Mapbox Terrain-RGB OpenTopoMap + AWS Terrarium DEM CC-BY-SA 3.0 / AWS Open Data
Digital Elevation & Slope Google Elevation API Open-Meteo (Copernicus DEM 30m GLO-30) Public Domain / CC0
Historical Earthquakes Proprietary Catastrophe APIs USGS FDSN Earthquake Catalog US Public Domain
River Floods & Discharge Commercial Hydrology Data Copernicus GloFAS via Open-Meteo Copernicus Open Access
Multispectral Satellite Sentinel Hub Paid Tiers Copernicus Sentinel-2 L2A API European Space Agency (ESA)

Calculating Slope from Space (For Free!)

How do you calculate whether a plot is buildable or prone to landslides without sending a surveyor with a theodolite?

We query 5 points: the site centroid $(x, y)$ plus four cardinal offsets 33 meters out $(x \pm 33\text{m}, y \pm 33\text{m})$. We fetch their elevations using the Copernicus 30m Global DEM and compute the maximum slope gradient:

# app/services/external_data_service.py
def calculate_topographic_slope(elevations: List[float], offset_meters: float = 33.0) -> float:
    """
    Computes the true ground gradient across cardinal samples:
    Slope (%) = (Ξ”h_max / horizontal_distance) * 100
    """
    center_elev = elevations[0]
    deltas = [abs(e - center_elev) for e in elevations[1:]]
    max_delta_h = max(deltas)

    slope_pct = (max_delta_h / offset_meters) * 100.0
    return round(slope_pct, 2)
Enter fullscreen mode Exit fullscreen mode

If the slope exceeds 15%, the system immediately triggers foundation excavation multipliers and flags slope-stabilization retaining wall requirements under IS 14458.


🧠 Why Pure LLMs Can't Draw Blueprints (And How CSP Fixes It)

If you ask an LLM to generate a JSON blueprint, it will happily invent coordinates where:

  • The bathroom has no exterior walls, suffocating anyone who enters.
  • The toilet shares a wall with the holy altar room (Pooja room).
  • You have to walk through the master bedroom to reach the kitchen.
  • On the 2nd floor, the upstairs bathroom sits directly above the living room ceiling fan, with zero plumbing shafts connecting to the ground. πŸ’€

Architectural layout is not a language completion problem. It is a Spatial Constraint Satisfaction Problem (CSP) with strict topological graph invariants.

In BuildWise AI, we built the Core-First Hierarchical Allocation (CF-HSA) engine (app/services/floorplan/multi_floor_solver.py):

graph TD
    subgraph MultiStoreySolver ["Core-First Hierarchical Allocation (CF-HSA)"]
        Req[User Specs & Plot Dimensions] --> Setbacks[NBC 2016 Setback Subtraction]
        Setbacks --> CoreLock[1. Anchor Phase: Lock Vertical Stair/Lift Cores at x,y]
        CoreLock --> ShaftLock[2. Lock Continuous Plumbing Wet Stacks]
        ShaftLock --> PlateSlice[3. Slicing-Tree Space Partitioner]
        PlateSlice --> TopoFilter[4. Topological Invariant Filters]
        TopoFilter --> ValGate[5. Deterministic Validation Gate L1-L14]
        ValGate --> Success[Mathematical Validity Certificate Issued βœ…]
    end

The 5 Non-Negotiable Architectural Invariants

Every single blueprint must satisfy these 5 mathematical invariants, or the plate is rejected:

1. The Leaf Rule ($\text{degree} = 1$)

In our circulation door graph, sensitive rooms (bathrooms, toilets, walk-in closets, pooja rooms) must be leaf nodes. They can only have an edge incident to a hallway or their parent room. Through-traffic is mathematically banned:

$$\text{degree}(v) = 1 \quad \forall v \in {\text{bath}, \text{wc}, \text{pooja}}$$

2. The Peripheral Service Rule

Every bathroom and kitchen must touch the building's exterior perimeter boundary:

$$\text{edge}(v) \cap \partial(\text{Envelope}) \neq \emptyset$$

No exterior wall = no natural ventilation shaft = instant code violation.

3. The Central-Box Exclusion (Brahmasthan)

Under ancient Vastu canon, the central 40% of a home (the Brahmasthan) must remain open for light, ventilation, and circulation. We codified this as a geometric bounding box:

$$C_{\text{box}} = [x_{\text{min}} + 0.30W, x_{\text{min}} + 0.70W] \times [y_{\text{min}} + 0.30D, y_{\text{min}} + 0.70D]$$

No service room centroid (bathroom, WC, kitchen) is permitted to lie within this box.

4. The Circulation Hub & Entry Axis

The main entrance must open strictly into the Living Room / Foyer. An entrance door that opens into a private bedroom or toilet fails the solver.

5. The Forbidden Adjacency Matrix

Bathrooms and sacred spaces cannot share a wall segment. We compute polygon boundary intersections:

$$\text{Wall}(\text{bath}) \cap \text{Wall}(\text{pooja}) = \emptyset$$


🏒 Multi-Storey Harmony: The "Rule of Cores" (G to G+3)

Building a multi-storey house isn't just generating 3 random floorplans and stacking them. If your staircase moves 2 meters to the left on the 2nd floor, your stairs lead straight into thin air!

Our multi-floor solver locks the vertical anatomy first:

Level G+2  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
           β”‚ Master Bedroom β”‚ STAIRCASE (Z) β”‚ Balcony        β”‚
           β”‚ [Wet Stack β–Ό]  β”‚ [LOCKED x, y] β”‚                β”‚
Level G+1  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
           β”‚ Bedroom 2      β”‚ STAIRCASE (Z) β”‚ Study Room     β”‚
           β”‚ [Wet Stack β–Ό]  β”‚ [LOCKED x, y] β”‚                β”‚
Level G    β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
           β”‚ Kitchen/Bath   β”‚ STAIRCASE (Z) β”‚ Living Foyer   β”‚
           β”‚ [Wet Stack β–ˆ]  β”‚ [LOCKED x, y] β”‚ Main Entrance  β”‚
           β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
             β–²                                β–²
        Plumbing Shafts                  Core Stays Frozen
      aligned within 0.05m               across all floors!
Enter fullscreen mode Exit fullscreen mode
  1. Vertical Anchor Locking: The primary staircase core and elevator chase are computed on Ground Level and frozen at the identical $(x, y, w, d)$ coordinates across all upper levels.
  2. Plumbing Wet-Wall Stacking: Bathrooms on upper levels must align over ground-level sanitary shafts within a 0.05 meter tolerance. No leaky pipes through living rooms!
  3. Graceful Degradation Protocol: If a plot is too small to fit the user's dream wishlist (e.g., trying to cram 6 bedrooms, 4 baths, and a gym into a 60 mΒ² envelope), the solver doesn't crash. It climbs a 5-level relaxation ladder, relaxing aspect ratios first before gracefully returning an exact diagnostic shortfall: "Plot envelope short by 14.2 mΒ² for requested program."

🧭 Vastu Shastra Meets Bioclimatic Optimization

In South Asian construction, up to 90% of residential clients demand compliance with Vastu Shastra (an ancient architectural canon). Many modern engineers dismiss it as superstition.

When you analyze Vastu through the lens of passive solar bioclimatic architecture, however, the brilliance emerges:

               NORTH (Kubera - Wealth / Diffuse Daylight)
          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
          β”‚   POOJA ROOM    β”‚  LIVING / ENTR  β”‚  WATER STORAGE  β”‚
          β”‚  NE (Ishanya)   β”‚      NORTH      β”‚   NW (Vayu)     β”‚
          β”‚ Morning Sunlightβ”‚ Indirect Light  β”‚ Cross Wind      β”‚
          β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
WEST      β”‚  BEDROOM / STUDYβ”‚   BRAHMASTHAN   β”‚   DINING ROOM   β”‚  EAST
(Varuna)  β”‚      WEST       β”‚  (Open Center)  β”‚      EAST       β”‚ (Indra)
          β”‚ Evening Breeze  β”‚  Zero Load      β”‚ Sunrise Light   β”‚
          β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
          β”‚ MASTER BEDROOM  β”‚  SERVICE / ELEV β”‚     KITCHEN     β”‚
          β”‚  SW (Nairutya)  β”‚      SOUTH      β”‚   SE (Agneya)   β”‚
          β”‚ Heavy Thermal   β”‚  Blocks Heat    β”‚ Morning Heat/   β”‚
          β”‚ Mass (No Sun)   β”‚                 β”‚ Kitchen Exhaust β”‚
          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                   SOUTH
Enter fullscreen mode Exit fullscreen mode
  • Kitchen in SE (Agneya / Fire): In the Northern Hemisphere, prevailing morning winds from the south-east push cooking heat and smoke away from the rest of the house.
  • Master Bedroom in SW (Nairutya / Earth): The south-west quadrant receives the harsh, scorching afternoon sun. Using this zone for heavy wardrobe walls and master suites provides a thermal buffer for the rest of the dwelling.
  • Pooja in NE (Ishanya / Water): Bathed in germicidal, soft morning ultraviolet light at sunrise.

In BuildWise AI, we codified this into a 9-Zone Purusha Mandala Matrix (app/services/vastu_service.py) that computes the exact cosine vector between the road access angle, sun azimuth, and the room placement score!


🎨 The UI: Apple Vibrancy & Native SVG Rendering

We wanted the interface to look like an Apple design award winner, not a dusty 1998 AutoCAD utility:

  • React 19 + Vite + Tailwind CSS: Zero lag, lightning fast hot-module reload.
  • Glassmorphism & Vibrancy Tokens: Translucent frosted acrylic panels (backdrop-blur-md, subtle borders, iOS-style spring animations).
  • Interactive SVG Blueprint Viewer (BlueprintViewer.tsx):
    • Full vector pan/zoom with mouse wheel and pinch-to-zoom.
    • Interactive layer toggles: Furniture, Architectural Dimensions, Vastu Quadrants, Plumbing Shafts, Column Structural Grids, and Fire Egress Paths.
    • Room hover inspection showing exact floor areas, hygiene ratings, and ventilation percentages.
  • Server-Side ReportLab PDF Pipeline:
    • Forget ugly window.print() hacks that break CSS grids.
    • The FastAPI backend compiles a true, print-grade 174mm vector drawing with technical title blocks, QR code site hashes, and an executive cost scorecard directly into a download-ready PDF.

πŸ§ͺ Rigorous Testing: 236 Unit Tests & 9-Viewport Audits

A civil engineering tool cannot afford "silent fails". If a floorplan generator silently drops a bedroom or generates an overlapping room, contractors waste real concrete.

We built a bulletproof testing pipeline:

# Frontend: Oxlint + TypeScript + 9-Viewport Puppeteer DOM audit
cd frontend
npm run lint          # Ultra-fast static analysis via Oxlint
npm run build         # Strict tsc type verification + Vite bundle
npm run audit:ui      # Puppeteer audits DOM integrity across 9 viewports

# Backend: 236 Pytest suites covering geometry, codes, and PDF rendering
cd ../backend
python -m pytest tests/
Enter fullscreen mode Exit fullscreen mode
  • 145-test placement regression suite: Validates that zero rooms overlap, all doors connect, and leaf invariants never break across 1,000 randomized plot aspect ratios.
  • L1–L14 Deterministic Validation Gate: Every single generated layout must pass a 14-layer inspection (validation_gate.py) before being marked with a MathematicalValidityCertificate.

πŸš€ Key Takeaways & Try It Yourself!

Building BuildWise AI proved three crucial engineering principles:

  1. You don't need expensive mapping APIs to build world-class geospatial tech. OpenFreeMap, OpenTopoMap, USGS, and Copernicus offer petabytes of pristine public telemetry if you take the time to wire them properly.
  2. LLMs should be the narrators, not the architects. Use deterministic algorithms and Constraint Satisfaction Solvers (CSP) for geometry, math, and building codes. Use LLMs for what they excel at: synthesizing executive summaries and explaining engineering trade-offs to human clients.
  3. Cultural constraints are just mathematical rules in disguise. Whether it's the International Building Code, the National Building Code of India, or Vastu Shastra, all architectural lore can be codified into typed models and solved with graph theory.

🌟 Explore the Code & Contribute

BuildWise AI is 100% open-source under the MIT License.

  git clone https://github.com/Mrtracker-new/BuildWise_AI.git
  cd BuildWise_AI
  ./run_project.bat   # Or spin up backend & frontend via standard CLI
Enter fullscreen mode Exit fullscreen mode

Got questions about spatial CSP, MapLibre GL styling, or Copernicus satellite queries? Drop them in the comments below β€” I’ll be hanging out and answering every single one! πŸ‘‡

Top comments (0)