Skip to content

skyexry/PivotPointAI

Repository files navigation

PivotPoint AI

Deterministic office-to-residential conversion feasibility scoring for NYC.

What it does

Upload a commercial floor plan PDF and an address. PivotPoint returns a 0–100 feasibility score with violations highlighted on the plan, building-code citations from a pgvector knowledge base, and a deal-memo executive summary.

How it works

  • PLUTO + Supabase enrichment — NYC PLUTO data (zoning, year built, floor count) merged with landmark, MPDA boundary, and subway-distance fields
  • Gemini 2.5 Pro vision — extracts violations, WWR, aspect ratio, and floor-plate depth; findings rendered as overlays on the PDF
  • 14-subscore deterministic formula — scores from structured building features; Gemini does not score
  • pgvector RAGgemini-embedding-001 embeds the query; top-4 Supabase regulation chunks surface as in-UI code citations

Scoring

Dimension Weight
Physical Suitability 50%
Regulatory Compliance 20%
Incentive Eligibility 20%
Market Conditions 10%

Thresholds: GO ≥ 90 · CONDITIONAL ≥ 70 · NO-GO below 70.
Hard veto: M2/M3 zoning forces NO-GO regardless of score.

Stack

  • Frontend: React 19, Vite 6, Tailwind CSS 4, Mapbox GL, PDF.js
  • Backend: Express (local dev) / Vercel Serverless Functions (prod)
  • AI: Gemini 2.5 Pro, gemini-embedding-001
  • Data: NYC PLUTO, Supabase Postgres + pgvector, NYC GeoSearch

Run locally

cp .env.local.example .env.local  # GEMINI_API_KEY, SUPABASE_URL, SUPABASE_SERVICE_KEY
npm install
npm run dev:all  # Vite :3000, Express API :3001

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors