The first line of code that would eventually become TestFit was written in C++ in 2016. After contemplating the problem of generating a building with parking + life safety + massing + circulation + unit mix + kit of parts + leasing office — so many different kinds of criteria — we chose to build our codebase in C. This would enable the most amount of math to happen the fastest, closest to the user. This forced us to generate quality buildings and make it an incredibly interactive experience. In 2017, Generate locally → Edit locally became our goal.
At this time there was a rise of cloud compute — users could compile Dynamo scripts and solve them in Refinery for multi-variable optimization. For me, though, living in the real estate world, the use cases felt design-exploration heavy: shape a tower based on the sun, or move nine towers around a large site to optimize for views. Both impressive, but missing the mark for an apartment community designer. What was needed was a much larger universe of geometries that could be solved for and then optimized against.
The TestFit Language Model
Since there is not currently any kind of massive structured dataset for, say, Texas Donuts to be drawn from an LLM, we have created procedural logic to solve just that — a Texas Donut, and many more building types.
Our market coverage in the US includes:
- High Density Multifamily / Hotel: Tower, Podium, Wrap, Donut, and Gurban configurations
- Low Density Multifamily / Hotel: Garden Apartments, Townhomes, Single Family Rentals, Villas
- Industrial Warehouses: Cross-dock, Single loaded
- Parking: Surface, Structured, Prefab
- Office: Spec Office
- Retail: Surface Parked Pad Sites
- Data Centers: In Alpha
- Everything else: Manual Massing Mode
Our goal for our users, in light of the AI revolution, is to open up the TestFit Language Model to be generated upon, explored, optimized, filtered, and ultimately to supercharge the Generate portion of the Generate → Edit feedback loop. The model also encompasses:
- Site Definitions: Metes and Bounds; Setback Dimensions; Setback Profiles (form-based setbacks)
- Topography: Cut and Fill Severity and Footprint Level Cut and Fill
- Data: Available FEMA and flood zone data
The constraint engine — the thing that makes a TestFit building actually buildable — is what separates a generative design tool from a useful one. AI without constraints produces geometry. AI with constraints produces buildings. That distinction is the whole game.