尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Evidence-grounded property decision support for Taiwan with GIS, public-data integration, valuation, risk, and deterministic workflows.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗An evidence-grounded decision-support system for property research in Taiwan, combining market, valuation, affordability, location, and spatial-risk evidence in one reviewable workflow.
Property decisions depend on records held by different public agencies, map providers, financial sources, and local systems. PropTech AI Copilot integrates these uneven sources behind explicit trust boundaries: it shows what is available, where it came from, what remains unknown, and which conclusions still require professional or government confirmation. The repository is technically interesting as a full-stack information system—part data-integration platform, part spatial decision-support system, and part experiment in responsible human-AI decision workflows.
Frontend: proptech-ai-copilot.vercel.app
The public Next.js frontend and its Cloud Run FastAPI backend were reachable on 2026-09-27. The backend reported production mode, readiness, and durable PostgreSQL. A live deployment is not the same as universal data coverage: each result retains source, freshness, coverage, and unavailable-state boundaries.
Current status:
Evaluating a property in Taiwan is not one database lookup. A buyer or reviewer may need transaction evidence, neighborhood context, loan assumptions, recurring costs, tax conditions, parcel clues, terrain or disaster references, and confirmation from a land office or other competent authority. These facts differ in scale, freshness, authority, and accessibility.
The project explores a practical information-systems problem: how can fragmented evidence be assembled into a useful decision workflow without hiding uncertainty? Its design favors traceable intermediate evidence over a single opaque score. Missing records stay missing. A provider timeout does not become “low risk.” A sample valuation does not become official. A map point does not become a legal parcel boundary.
The live workflow resolves locations, displays map context, and summarizes nearby places. Google Geocoding and Places run behind server-side adapters; TGOS remains conditional. Leaflet, uploaded GeoJSON/KML/Shapefiles, spatial analysis, and cadastral views provide decision context—not proof of ownership, legal area, or parcel boundaries.
Controlled batches normalize official Ministry of the Interior PLVR transactions into PostgreSQL for aggregates, comparables, search, valuation ranges, and trends. On 2026-09-27, live status reported 451,672 official rows across 21 cities/counties and 317 districts, plus 72 labelled sample rows. This dated snapshot has partial—not complete Taiwan—coverage; its outputs are not appraisals, bank valuations, or price guarantees.
Deterministic services calculate loan, affordability, and holding-cost scenarios. TaxOracle returns eligibility, risk, rule traces, missing information, and follow-up prompts from versioned rules. Template explanations cannot alter outcomes or invent legal conclusions. These outputs are planning references, not underwriting, filings, or professional advice.
Terrain analysis keeps layers separate rather than producing an unqualified safety score. Paths include ARDSWC tiles, GeologyCloud polygons, WRA flood artifacts, conditional NLSC observations, and optional Sentinel-2 context. Layer states remain explicit; incomplete evidence cannot produce an unrestricted “safe” conclusion or replace official and engineering review.
The frontend assembles evidence into summaries, comparisons, notes, readiness checks, and reports. Compacted browser cases exclude detailed provider payloads, precise locations, POIs, and comparables. A feature-gated VNext foundation adds authenticated workspaces, durable evidence, identity candidates, human confirmation, parcel sets, and PostgreSQL row-level security; it is not a completed professional product.
flowchart LR
U[User or reviewer] --> FE[Next.js frontend<br/>Vercel]
FE -->|consumer workflow| API[FastAPI API<br/>Cloud Run]
FE -->|compacted saved cases| BS[(Browser storage)]
FE -->|VNext session| AUTH[Supabase Auth]
AUTH -->|JWT, feature-gated| API
API --> S[Decision and evidence services]
S --> DB[(PostgreSQL)]
S --> A[Provider adapters]
A --> P[Official and public sources]
A --> X[(Validated datasets<br/>and spatial artifacts)]
O[Offline imports, migrations,<br/>and preprocessing] --> DB
O --> X
The separation is deliberate. FastAPI owns validation, policy, and orchestration; domain services own deterministic calculations and evidence contracts; adapters normalize external sources and bounded artifacts. PostgreSQL stores durable market, evidence, pilot, and VNext data. Heavy imports and spatial preprocessing publish to PostgreSQL or versioned artifacts outside the request path. See System Architecture for the consumer/VNext boundary and deployment detail.
| Source | Purpose | Integration status | Trust / coverage note |
|---|---|---|---|
| Ministry of the Interior PLVR | Transactions, market aggregates, comparables, valuation | Live verified | Partial, mixed dataset; historical evidence only |
| Google Geocoding / Places / Routes | Location, POIs, route context | Live/conditional | Credential, quota, and provider availability apply |
| TGOS | Taiwan address observations | Implemented/conditional | Not accepted as a complete VNext identity provider |
| ARDSWC / WRA / GeologyCloud | Landslide, flood, liquefaction references | Implemented/partial | Dataset-specific coverage; reference only |
| NLSC | Basemaps, terrain/cadastral/village seams | Partial/conditional | Map context is not legal parcel identity |
| RIS ODRP014 | Village demographics | Implemented/conditional | Loaded coverage and month require runtime evidence |
| TDX | MRT/commute context | Implemented; live unavailable during audit | Manual in-memory snapshot refresh |
| Central Bank Open Data | Mortgage-rate background | Implemented/conditional | Not a borrower-specific lending offer |
| Sentinel-2 / Earth Engine | Recent satellite reference | Feature-gated | Not cadastral or statutory evidence |
The detailed Data Sources and Integration Status explains provider code paths, failure semantics, and authority boundaries.
These are validation observations, not claims about user adoption or permanent uptime. Reproduction and scope are documented in Engineering and Validation.
This repository is an engineering artifact with clear relevance to information systems and digital transformation. It studies how heterogeneous public and private-facing data can be normalized, governed, and presented as operational evidence. The property journey is a spatial decision-support problem: location, market, risk, and financial signals must be interpreted together while preserving scale, coverage, and authority.
It also provides a concrete human-AI workflow boundary. Deterministic systems produce facts and calculations; an explanation layer may help a person understand them; the person remains responsible for resolving conflicts and obtaining authoritative confirmation. That architecture creates opportunities for future evaluation of decision quality, data provenance comprehension, interface trust, and the operational effect of evidence-aware automation. It is not presented as a peer-reviewed research contribution.
My contributions span product and decision-workflow design, GIS and public-data integration, full-stack implementation, database and pipeline engineering, trust-boundary design, QA, deployment validation, and technical documentation.
The repository documents this work through source code, tests, architecture records, and production-acceptance artifacts. The project has involved collaboration; this section does not imply sole authorship, a particular job title, or a contribution percentage.
| Area | Technology |
|---|---|
| Frontend | Next.js 16, React 19, TypeScript, Tailwind CSS, Leaflet |
| Backend | Python, FastAPI, Pydantic, Uvicorn |
| Data | PostgreSQL, Supabase, psycopg, SQL migrations, object-storage artifacts |
| Spatial | Shapely, pyproj, pyshp, Mapbox Vector Tile, GeoJSON/KML/Shapefile |
| Providers | PLVR, Google Maps services, TGOS, TDX, NLSC, ARDSWC, WRA, RIS, Earth Engine |
| Quality | Pytest, Playwright, Node test runner, ESLint, TypeScript, GitHub Actions |
| Deployment | Vercel, Cloud Run, Docker; Render configuration retained |
backend/ FastAPI routes and application entry point
frontend_next/ Next.js product frontend and browser acceptance tests
services/ Domain services, adapters, providers, persistence, security
database/ SQL schemas, migrations, registry, verification
tests/ Python API, service, contract, migration, and safety tests
scripts/ Data, migration, release, smoke, and operations tooling
docs/ Architecture, data, trust, validation, and runbooks
data/ Curated samples and runtime reference catalogs
Prerequisites: Python 3.12+, Node.js, npm, and Git.
python -m pip install -r requirements.txt
cd frontend_next
npm ci
cd ..
In separate PowerShell terminals:
.\scripts\start_backend.ps1
.\scripts\start_frontend.ps1
Open http://localhost:3000. External providers and PostgreSQL-backed capabilities require the environment configuration described in .env.example, frontend_next/.env.example, and the documentation. Never place production credentials in the repository.
Start with the documentation index.
Status: active engineering/research portfolio and decision-support system with a verified live consumer deployment and experimental professional foundations.
No license file is currently present. Public visibility does not grant permission to copy, modify, or redistribute the code. A license should be selected explicitly by the repository owner before describing the project as open source.