548ebee47f7c3b9d48aa9e7643ac23a1633fbd8a
后端加载优化(盘中原本每次访问都重新聚合,耗时 10-30 秒): - 图聚合结果与题材股票子层盘中加 60 秒缓存 - 缓存过期时返回旧数据并后台幂等重建(stale-while-revalidate),打开即秒开 - 缓存基础支持秒级 TTL(set_cache 新增 ttl_seconds) - 响应体瘦身:移除 edges(前端从 stocks[].themeCodes 重建)、 themes 精简字段、stocks 按 limit 裁剪,JSON 从数 MB 降至数百 KB 前端 Canvas 渲染重构: - d3-force 布局保留,SVG 渲染层替换为 Canvas 双缓冲(静止态离屏层 drawImage) - tick 由每帧 setState 改为 rAF 合帧,拖拽/缩放期间零 React 重渲染,800 节点流畅 交互优化: - 手机:新增 +/−/适应 缩放按钮、命中半径放大至 22px、tap/drag 6px 阈值区分、 双指捏合缩放、触屏禁用 hover 避免与选中冲突 - Mac 触控板:双指滚动=平移、捏合(ctrlKey)=缩放、滚轮缩放保留、点空白取消选中 Co-Authored-By: Claude <noreply@anthropic.com>
Meoo 项目开发指南
本项目从 Meoo 平台导出,修改后可重新导入。 以下规则确保项目能被平台正确识别和恢复,请在使用本地 AI 工具(Cursor / Copilot / Claude Code 等)开发时遵守。
启动项目
pnpm install
pnpm dev
开发服务器端口:3015(http://localhost:3015)
开发约束
- 技术栈:react + vite,不要更换框架或构建工具(如切换为 Angular / Svelte),否则导入时会被拒绝
- 不要删除以下文件:
meoo-manifest.json、meoo-cloud-snapshot.json(重新导入时需要;同名隐藏文件为平台兼容副本)
云服务(Supabase)
数据库
src/supabase/client.ts— Supabase 客户端配置,不要删除或重命名此文件(平台靠它检测云服务状态)- 修改数据库结构时,在
migrations/目录下新增.sql文件,不要修改或删除已有的 migration 文件 - 命名格式:
YYYYMMDD_HHmmss_name.sql,name 为纯小写 snake_case(如20260605_120000_add_orders_table.sql) - 平台按文件名字典序执行,时间戳前缀保证顺序
- 必须使用幂等语法:
CREATE TABLE IF NOT EXISTS、CREATE OR REPLACE FUNCTION、DROP ... IF EXISTS+CREATE,因为导入时所有 migration 会重新执行 - SQL 内容为纯 DDL(CREATE / ALTER / DROP),整个文件作为一条语句执行
Edge Functions
- 云函数放在
functions/<函数名>/index.ts - 每个函数一个目录,入口必须是
index.ts - 导入后平台会自动部署所有检测到的云函数
环境变量
- 系统变量(
SUPABASE_URL、SUPABASE_ANON_KEY等)导入后自动配置,无需手动管理 - 自定义环境变量(如第三方 API Key)导入后需要在平台上重新设置
导入回平台
- 将项目打包为 ZIP(排除
node_modules、.git、dist目录) - 在 Meoo 首页点击输入框的「+」→「导入项目」
- 上传 ZIP → 平台自动验证 → 创建新项目
- 点击「确认开启云服务」一键恢复数据库和云函数
Languages
TypeScript
76.5%
Python
20.2%
HTML
1.1%
CSS
1%
Shell
0.9%
Other
0.3%