AI 기반 건축설계 웹 서비스 MVP.
이 프로젝트의 코드/구성/리팩터링은 OpenAI Codex만 사용해 구현했습니다.
이 버전은 다음 목표를 실제 동작 가능한 형태로 구현합니다.
- 지도에서 대지 영역(폴리곤) 입력
- 건축물 용도/사양 입력
- 날짜 기준(
evaluation_date) 법규 버전 자동 선택 - 프로젝트별 룰 스냅샷 고정(재현성 확보)
- FAR 최대화 중심 3개 대안 산출
- Three.js 3D 매스 시각화
- 위치 기반 시간대 일조량(간이 모델) 계산
- 정성 평가(스카이라인/가로 스케일/오픈스페이스/레퍼런스 성숙도) 반영
- 국가 선택(KR/SG/US-NYC) 및 미관 레퍼런스 입력 지원
- 공동주택(
residential/mixed_use)은 다동 배치(multi-block)로 생성하고 세대면적 믹스/동간거리/평면유형 점수 반영
- Backend:
FastAPI + SQLAlchemy - DB:
SQLite(기본), PostgreSQL 전환 가능 - Frontend:
React + Vite + TypeScript + Tailwind + shadcn-style primitives + MapLibre + Three.js - Frontend structure:
Feature-Sliced Design (app/pages/widgets/features/entities/shared) - Rule system:
rule_sets: 관할/카테고리/버전/시행일rule_definitions: JSON DSL 기반 제약식project_rule_snapshots: 실행 시점 룰 고정
cd /Users/zakklee/dev/buildit
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:appAPI base: http://127.0.0.1:8000/api
--reload 옵션은 일부 제한된 터미널 환경에서 파일 감시 권한 오류가 발생할 수 있습니다.
cd /Users/zakklee/dev/buildit/web
npm install
npm run devWeb URL: http://localhost:5173
cd /Users/zakklee/dev/buildit
./scripts/restart-dev.shStop both:
cd /Users/zakklee/dev/buildit
./scripts/stop-dev.sh- 입력 페이지:
/ - 결과 페이지:
/results/:runId - 지도 조작:
폴리곤 그리기버튼 클릭 후 대지 직접 드로잉
cd /Users/zakklee/dev/buildit
source .venv/bin/activate
python3 scripts/seed_demo.pycd /Users/zakklee/dev/buildit
source .venv/bin/activate
python3 scripts/profile_optimizer.pyPOST /api/usersPOST /api/rules/setsPOST /api/rules/definitionsPOST /api/projectsPOST /api/projects/{project_id}/requirementsPOST /api/projects/{project_id}/aesthetic-inputsPOST /api/runs/projects/{project_id}/evaluateGET /api/runs/{run_id}
- 법규는 코드가 아닌 DB 데이터로 관리
- 각 룰셋은
effective_from/effective_to/version/source_url보유 - 계산 요청마다
evaluation_date를 받아 해당 시점 룰만 선택 - 계산 순간
project_rule_snapshots에 룰 ID 목록 고정 - 과거 결과를 동일 조건으로 재현 가능
- 일조량 계산은 현재 간이 모델입니다. 향후
pvlib + 주변 건물 3D로 고도화 가능합니다. - 최적화도 현재는 baseline heuristic입니다. 향후 MILP/NSGA-II 엔진으로 교체 권장.
- 법규 조사 메모:
docs/legal-research-2026-02-17.md