FinDataHub f7df96333b fix(frontend): 去外链字体阻塞、端点解析多端化、补齐来源映射
1. 移除 Google Fonts 外链
   <link rel="stylesheet"> 指向 fonts.googleapis.com 是 render-blocking,
   墙内通常连接超时——浏览器会一直阻塞首屏渲染,用户看到白屏而非降级。
   改为系统字体栈(--font-sans / --font-mono),零网络请求。
   验证:vite build 产物已无 fonts.googleapis / fonts.gstatic 引用。

2. 端点解析收进 runtime.js(两处同源假设阻断桌面壳)
   - api/index.js: baseURL '/api/v1'
   - useWebSocket.js: location.host
   两者在 Tauri 下分别解析到 tauri://localhost/api/v1 与 tauri.localhost:80,
   **都不报错、只是数据全空**——界面能开、列表全空,是最难排查的一类故障。
   收敛为 runtime.js 单一入口,优先级:VITE_API_BASE > 桌面壳本机 > 浏览器同源。
   axios 拦截器同步补 X-API-Key。

3. 来源映射缺 3 个源
   缺 tencent_news(后端有独立分表 news_tencent)、xueqiu、yicai(RSS 侧)。
   这是既有测试先写、实现没跟上的典型:tests/sources.test.js 3 条用例长期失败。
   顺带修正匹配顺序:'东方' 会被泛化规则抢先命中,改为 '东方财富'。

4. 多端适配补强
   - isMobile() 触屏判定、safe-area 安全区、overflow-wrap
   - @media (hover: none) 触摸设备用 active 代替 hover(触屏上 hover 会粘住)
   - @media (max-width: 380px) 极窄屏、prefers-reduced-motion 无障碍
   - 触屏点击目标不小于 44×44

测试:前端从 28 passed / 3 failed → 44 passed / 0 failed
(新增 runtime.test.js 13 条覆盖桌面壳端点解析)。
2026-10-26 20:55:41 +08:00

FinDataHub 文档中心

更新于 2026-08-09 | P1-P4 全部完成 | P5 远期规划


目录结构

Docs/
├── README.md                  ← 你在这里
├── pipeline/                  # 🟣 数据管道架构设计
├── macos/                     # 🍎 macOS App 设计
└── tracking/                  # 📋 项目管理追踪

🟣 pipeline/ — 数据管道架构设计

文件 类型 说明
findatahub-data-pipeline.html 设计手册 核心架构 + 架构规范:三层 Medallion、7 步 Pipeline、4 级门控、依赖铁律、组件契约、代码质量标准
rate_limit_pull_plan.md 方案文档 限流方案:6 接口分析 + 新浪/东财降级 + 北交所重拉
EXECUTION_PLAN.md 已归档 重构执行方案(2026-07 阶段,已执行完毕)

🍎 macos/ — macOS App 设计

文件 类型 说明
DESIGN.md 设计规范 Apple HIG 设计 Token + Liquid Glass 改造方案(附录)
DEVLOG.md 开发日志 SwiftUI App 每日开发记录

📋 tracking/ — 项目管理追踪

文件 类型 说明
TODO.md 待办 + 完成记录 13 项任务 + P1-P4 完成明细 + 架构重构项

进度总览

阶段 内容 状态
P1 采集层:双源交叉验证 + AKShare 修复 + 北交所重拉 ✅
P2 预处理层:7 步 Pipeline + 4 级门控 + 策略画像 ✅
P3 使用层:SDK 11 方法 + API 14 端点 ✅
P4 AI 接入:Skills + MCP 7 工具 ✅
P5 云端扩展:阿里云同步 / Redis 缓存 / 数据血缘 📅 未来
S
Description
本地金融数据终端 macOS App(SwiftUI + kuaixun-service + MySQL 数据管线)
Readme
4.3 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 58.1%
Swift 26.9%
HTML 8.5%
Vue 2.8%
Shell 1.8%
Other 1.9%