Xylem Platform
Xylem is an integrated real estate development platform that helps architects, developers, and planners design, analyze, and optimize building projects. The platform combines GIS mapping, regulatory compliance checking, building simulation, and project management into a single workflow.
What Xylem Does
At its core, Xylem takes a real-world land parcel — usually starting from a surveyor's DWG file — and guides developers through the full lifecycle:
- Survey Map Ingestion — Upload DWG files, convert them to DXF/GeoJSON, and extract site metadata using AI (Google Gemini)
- Regulatory Analysis — Check the site against zoning regulations, setback rules, FAR calculations, and authority requirements (BDA, BBMP, etc.)
- Building Simulation — Generate optimized tower configurations, floorplate layouts, and unit mixes based on constraints
- Solution Exploration — Visualize solutions in 3D on an interactive map with solar analysis, shadow studies, and performance metrics
- Project Management — Organize projects within organizations, share with collaborators, and manage variants
System Architecture
The platform is composed of six services, all deployed on a single AWS instance and managed by PM2:
| Service | Tech Stack | Domain | Port |
|---|---|---|---|
| Backend API | NestJS, Prisma, PostgreSQL | api.xylem.city | 4000 |
| Frontend App | Next.js 15, React 19, Mapbox GL | xylem.city | 4801 |
| Admin Panel | React, Vite, ReactFlow | admin.xylem.city | Static |
| Geo Tile Server | Express, TypeScript, SQLite | geo.xylem.city | 4830 |
| Simulation Engine | Python, FastAPI, Shapely, pvlib | — | 4902 |
| SME Analyzer | Python, FastAPI, ezdxf, CairoSVG | sme.xylem.city | 4802 |
┌─────────────────────────────────────────────────────────┐
│ Nginx (Reverse Proxy + SSL) │
│ xylem.city admin.xylem.city api.xylem.city geo.* │
└────┬──────────────┬──────────────┬───────────────┬──────┘
│ │ │ │
┌────▼────┐ ┌──────▼──────┐ ┌───▼───┐ ┌──────▼──────┐
│ Frontend│ │ Admin Panel │ │Backend│ │ Geo Server │
│ Next.js │ │ Vite SPA │ │NestJS │ │ Express │
│ :4801 │ │ (static) │ │:4000 │ │ :4830 │
└─────────┘ └─────────────┘ └───┬───┘ └─────────────┘
│
┌─────────────┼─────────────┐
│ │ │
┌─────▼─────┐ ┌────▼────┐ ┌──────▼──────┐
│ PostgreSQL │ │ Sim │ │ SME │
│ (Prisma) │ │ Engine │ │ Analyzer │
│ │ │ :4902 │ │ :4802 │
└────────────┘ └─────────┘ └─────────────┘
Quick Links
- Architecture Overview — Deep dive into the system design
- Deployment Guide — PM2, Nginx, SSL, and domain configuration
- Database Schema — Prisma models and relationships
- Backend API — NestJS modules and endpoints
- Frontend App — Next.js app structure and components
- Admin Panel — Internal admin dashboard pages