diff --git a/CLAUDE.md b/CLAUDE.md index 88f76bc7..0df354cf 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co ## Project Overview -PolyWeather Pro — a paid institutional weather-intelligence terminal. 50 monitored cities with real-time METAR/AMOS/MADIS observations, DEB multi-model temperature blending, Mu probability calibration, and intraday bias correction. Pure meteorological decision workspace; no market/price layer. Next.js 15 + React 19 (Vercel) frontend, FastAPI backend (VPS), Telegram bot. +PolyWeather Pro — a paid institutional weather-intelligence terminal. 50 monitored cities with real-time METAR/AMOS/MADIS observations, DEB multi-model temperature blending, Mu probability calibration, and intraday bias correction. Pure meteorological decision workspace; no market/price layer. Next.js 15 + React 19 frontend (Docker / VPS, behind Cloudflare + Nginx), FastAPI backend (VPS), Telegram bot. **Business model**: Paid-only, $10/month, no free tier, no trial. Landing page is public; `/terminal` requires login + active subscription. @@ -47,10 +47,12 @@ docker compose down && docker compose up -d --build ## Architecture ``` -Users → Next.js (Vercel) → FastAPI :8000 (VPS) - /terminal (paid gate) Weather Collector - / (landing page) Analysis (DEB + Mu) - Payment Layer (USDC on Polygon) +Users → Cloudflare → Nginx → Docker Compose (VPS) + ├── Next.js frontend → FastAPI :8000 + │ /terminal (paid gate) Weather Collector + │ / (landing page) Analysis (DEB + Mu) + │ Payment Layer (USDC on Polygon) + └── Redis (SSE event store) Telegram Bot → bot_listener.py ``` diff --git a/README.md b/README.md index 78842302..ecb6f48f 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,7 @@ See: [AGPL-3.0 & Commercial Boundary](docs/OPEN_CORE_POLICY.md) ```mermaid flowchart LR - U["Users (Web / Telegram)"] --> FE["Next.js Frontend (Vercel)"] + U["Users (Web / Telegram)"] --> FE["Next.js Frontend (Docker / VPS)"] U --> BOT["Telegram Bot (VPS)"] FE --> API["FastAPI /web/app.py"] BOT --> API diff --git a/README_ZH.md b/README_ZH.md index 67c59581..470de2be 100644 --- a/README_ZH.md +++ b/README_ZH.md @@ -83,7 +83,7 @@ ```mermaid flowchart LR - U["用户(Web / Telegram)"] --> FE["Next.js 前端(Vercel)"] + U["用户(Web / Telegram)"] --> FE["Next.js 前端(Docker / VPS)"] U --> BOT["Telegram Bot(VPS)"] FE --> API["FastAPI /web/app.py"] BOT --> API @@ -218,7 +218,7 @@ POLYWEATHER_OPS_ADMIN_EMAILS=yhrsc30@gmail.com - AGPL-3.0 边界:[docs/OPEN_CORE_POLICY.md](docs/OPEN_CORE_POLICY.md) - Supabase 接入:[docs/SUPABASE_SETUP_ZH.md](docs/SUPABASE_SETUP_ZH.md) - 配置与密钥管理:[docs/CONFIGURATION_ZH.md](docs/CONFIGURATION_ZH.md) -- 前端部署(Vercel):[docs/FRONTEND_DEPLOYMENT_ZH.md](docs/FRONTEND_DEPLOYMENT_ZH.md) +- 前端部署(Docker / VPS):[docs/FRONTEND_DEPLOYMENT_ZH.md](docs/FRONTEND_DEPLOYMENT_ZH.md) - 技术债:[docs/TECH_DEBT_ZH.md](docs/TECH_DEBT_ZH.md) - 机场实时数据源:[docs/AIRPORT_REALTIME_SOURCES.md](docs/AIRPORT_REALTIME_SOURCES.md) - 机场市场监控(中文):[docs/AIRPORT_MARKET_MONITOR_ZH.md](docs/AIRPORT_MARKET_MONITOR_ZH.md) diff --git a/extension/README.md b/extension/README.md index 5cad0384..85a3e8b3 100644 --- a/extension/README.md +++ b/extension/README.md @@ -43,7 +43,7 @@ 首次建议打开扩展"选项页"并确认: -- `网站基础地址`:你的前端域名(例如 `https://polyweather-pro.vercel.app`) +- `网站基础地址`:你的前端域名(例如 `https://polyweather.top`) - `API 基础地址`:你的后端 API 域名(若同域也可填前端域名) - `Bearer Token`:后端开启鉴权时填写 diff --git a/extension/options.html b/extension/options.html index 8444500e..22531bbf 100644 --- a/extension/options.html +++ b/extension/options.html @@ -12,12 +12,12 @@