AstroResearch/dashboard
Asfmq 8f1ed6d08c feat: 观测层跨源扩展——ZTF/TESS 时域 + Gaia XP 光谱还原 + FITS 预览与统一全源检索
后端(新增 ~4400 行):
- 新增 IRSA/IPAC、MAST 两客户端:ZTF 光变曲线(IRSA REST,CSV,免认证)、
  TESS 光变(MAST TIC cone search + LC FITS),均复用 SSRF 安全重定向 + 重试
- Gaia DR3 XP_CONTINUOUS 光谱还原(gaia_xp/):逆向 GaiaXPy calibrate() 算法,
  55 个 Hermite 系数 → 采样光谱;design_matrix 启动时 OnceLock 预计算一次。
  因 fitsio crate 遇 PD(55) 变长数组列会 panic,改用 fitsio-sys 直连 CFITSIO
  原生读取;新增 fitsio/fitsio-sys(vendored,无需系统 cfitsio)
- FITS 预览解析层(preview.rs):跨 LAMOST/SDSS/DESI/Gaia XP 的异构 FITS
  (BinTable/Image/Hermite 系数)统一归一化为 ObservationPreview JSON
  (Spectrum/LightCurve/Photometry/Image 标签枚举,OCP 可扩展)
- 测光 fetcher(photometry.rs):2MASS/AllWISE/Pan-STARRS/Gaia 四源,
  均复用 VizieR/Gaia TAP 查询、零新 HTTP 代码,配置驱动表名/列名差异
- 统一全源检索(unified.rs):在 dispatch 之上叠加多目标 × 多源并发 cone 扇出,
  失败隔离,两阶段(检索聚合 → 勾选后复用现有 download 端点批量下载)
- registry 注册 6 个新 fetcher + list_all_keys() 暴露全 (Source,ProductSpec)
  组合供前端细粒度勾选;Source 枚举增 5 个变体
- 新增 3 条路由:GET /observation/preview、POST /observation/unified/{search,resolve}

前端(新增 ~1600 行):
- UnifiedSearchPanel:三模式目标输入(坐标/天体名/CSV)+ 源 chip 筛选,
  按 (source,product) 分组展示候选源并支持勾选批量下载
- SpectrumPlot:手写内联 SVG 光谱折线图(零第三方绘图库),多段叠加 + hover 取值
- ObservationPreviewRenderer + useObservationPreview:预览渲染接入
- useObservation/ObservationResultCard/App 联动统一检索状态与下载链路
2026-07-09 00:20:29 +08:00
..
public refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
scratch refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
src feat: 观测层跨源扩展——ZTF/TESS 时域 + Gaia XP 光谱还原 + FITS 预览与统一全源检索 2026-07-09 00:20:29 +08:00
.gitignore feat: 初始化 AstroResearch 核心系统代码及重构技术文档 2026-06-08 17:23:27 +08:00
.prettierrc refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
eslint.config.js refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
index.html feat: LAMOST DR12-14 与子版本体系接入、观测层安全加固与并发异步化 2026-07-07 21:16:46 +08:00
package-lock.json refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
package.json refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
README.md refactor: 全栈架构重构与质量硬化——API 错误统一、工具域重组、安全加固、前端组件化 2026-06-25 23:45:37 +08:00
tsconfig.app.json feat: 初始化 AstroResearch 核心系统代码及重构技术文档 2026-06-08 17:23:27 +08:00
tsconfig.json feat: 初始化 AstroResearch 核心系统代码及重构技术文档 2026-06-08 17:23:27 +08:00
tsconfig.node.json feat: 初始化 AstroResearch 核心系统代码及重构技术文档 2026-06-08 17:23:27 +08:00
vite.config.ts refactor: Prettier 格式化全量前端、Library 服务端分页筛选、Agent 工具输出可视化与 .agent 目录统一 2026-07-03 00:11:02 +08:00
vitest.config.ts refactor: 全栈质量硬化 2026-06-28 14:40:26 +08:00

AstroResearch Dashboard / 前端仪表盘控制台

本模块是 AstroResearch 的前端部分,基于 React (TypeScript) + Vite + Tailwind CSS 构建。


1. 本地开发与调试 (Setup & Dev)

1.1 安装依赖

确保已安装 Node.js (v18+),在当前目录下运行:

npm install

1.2 启动开发服务器

npm run dev

开发服务器将默认运行在 http://localhost:5173。Vite 已配置了对 http://localhost:8000 (后端) 的代理转发,跨域请求会自动路由。


2. 核心功能及文件结构 (Core Modules)

  • src/pages/:页面级大组件视图(如统一检索、馆藏管理、对照阅读、引文星系、批量同步、智能科研、系统设置)。
  • src/components/:通用与专有 UI 组件(如力导向引文星系图、文献阅读器子组件、流水线任务终端等)。
  • src/hooks/:抽取出的全局共享及业务数据逻辑 HooksuseLibraryuseReaderStateuseSyncState 等)。
  • src/types/:全局 TypeScript 静态类型定义(types/index.ts)。

3. 生产构建 (Build)

若需打包生成生产环境静态文件:

npm run build

打包文件将输出至当前目录下的 dist/,后端 Axum 在编译时会直接将其静态托管。


4. 开发规范 (Coding Standards)