Inspiration Construction sites run on manual observation. A site manager walks the floor, looks at a crane, a beam, a stack of rebar, and has to mentally cross-reference: what is this, who supplied it, is it installed correctly, and what could go wrong? That knowledge lives in someone's head or in scattered paperwork — it doesn't scale, and it doesn't get faster as sites get bigger. We wanted to see how far a single photo could go if an AI system did that cross-referencing instead: not just "what is this object," but "what does knowing this object unlock" — supply chain records, risk factors, and a live map of how everything on site relates to everything else.
What it does BuildMind AI turns one uploaded site photo into a fully operational intelligence system. A real zero-shot vision model detects construction components in the image — cranes, beams, rebar, scaffolding — and returns their exact locations. That single result then powers six connected modules at once:
Command Center Dashboard — an aggregated summary of everything detected Live Knowledge Graph — a physics-simulated map of components, vendors, and how they relate Site View — the actual uploaded photo with real bounding-box overlays locked onto detected components Supply Chain Ledger — procurement records tied to detected components and vendors Risk Agent Matrix — construction risks relevant to what's actually in the photo Agent Communications Log — a live-style terminal feed narrating what each module is doing
Nothing is pre-loaded. Every module starts in a dormant state, and only comes alive once a real photo has been analyzed.
How we built it The backend is a FastAPI service running OwlViT, a zero-shot object detection model, so we could detect construction-specific components (crane booms, rebar, scaffolding) without needing a custom-trained dataset — we simply defined the label set in code and let the model match against the image directly, returning real bounding box coordinates for each match. The frontend is a Next.js app with one JSON contract as the single source of truth: everything the vision model returns is written once to shared state, and all six modules read from that same object rather than maintaining their own separate data. The Knowledge Graph uses react-force-graph-2d for physics-based layout; the Site View module maps real bounding-box percentages back onto the displayed image so the HUD overlays land exactly where the object actually is, regardless of how the image is scaled or resized in the browser. We also built a small curated lookup layer for vendor names and construction risk context — since a vision model can identify that something is a crane boom, not which supplier's crane boom it is — and we made a point of clearly labeling that layer as curated rather than model-inferred, so the system stays honest about what's true AI detection versus enrichment logic. Challenges we ran into The hardest problem was making sure "real AI, real data" stayed true all the way through the pipeline, not just at the first step. Early on, placeholder values ("unknown structure") leaked from a fallback path into every single module — dashboard, risk panel, supply chain — because they all shared state, so one silent default became a systemic bug. That pushed us to be much more disciplined about tracing every field back to its actual source, and to explicitly tag which parts of our JSON come from the vision model versus which are supporting logic. Getting the bounding-box overlay to align pixel-for-pixel with the real image was also trickier than expected — the model returns coordinates relative to the original image, but the displayed image is resized and letterboxed in the browser, so a naive overlay drifted off the real object until we accounted for that scaling properly.
Accomplishments that we're proud of We're proud that the system has no idle mocked state — every module is genuinely dormant until real inference happens, and you can verify that live during a demo by clicking through empty screens before uploading a photo. We're also proud of treating "honesty about what's AI versus what's supporting logic" as a design principle, not an afterthought — every derived field in our JSON is explicitly labeled by source, which we think is a better engineering practice than most demo projects bother with.
What we learned We learned how easy it is for an AI-assisted build to quietly drift toward looking like it works rather than actually working — confident-sounding explanations of "fixed bugs" that weren't actually fixed taught us to demand real output (actual JSON, actual console logs, actual test runs) at every step instead of trusting a description of a fix. We also learned a lot about the practical difference between image classification and object detection, and why spatial reasoning (bounding boxes, relative position) unlocks a much richer set of downstream features than a single whole-image label ever could.
What's next for BuildMind AI Fine-tune detection on a real construction dataset for higher accuracy and a broader component vocabulary Add live webcam-based detection for continuous site monitoring, not just single-photo analysis Use an LLM reasoning layer to generate risk assessments dynamically from detected components, rather than a rule-based lookup Add persistent project history with a real database, so site data accumulates over time instead of resetting per session
Built With
- ai
- artificial-intelligence
- computer-vision
- construction-tech
- d3.js
- fastapi
- force-graph
- framer-motion
- huggingface
- javascript
- machine-learning
- nextjs
- object-detection
- owlvit
- pillow
- proptech
- python
- pytorch
- react
- tailwindcss
- transformers
- typescript
- uvicorn
- zero-shot-learning
Log in or sign up for Devpost to join the conversation.