12975 8d51e12076 feat:
首页 (Home) 进化:
动态英雄卡片: 净资产卡片新增了名为 meshGradient 的流体渐变动画,视觉效果极其迷人。
交互式账本切换: 优化了欢迎语区域的账本选择器,新增了带图标的状态标签和悬停效果,操作更直观。
视觉细节: 同步了全局强调色变量,消除了硬编码颜色,完美支持深色/浅色/多强调色切换。
账户 (Accounts) 界面增强:
图标系统升级: 全面替换为 Solar 系列双色图标,视觉风格高度统一且具备现代感。
资产中心重构: 优化了总资产与总负债的统计卡片,引入了更灵动的玻璃态阴影和悬浮弹性动画。
报表 (Reports) 与 交易 (Transactions) 视觉同步:
通用卡片组件升级: 重构了
SummaryCard
 组件,新增了由强调色驱动的动态阴影 (--shadow-glow) 和 3D 旋转悬停效果。
数据展示优化: 统一了汇总仪表盘的层级结构,增强了收支汇总的视觉层次感。
沉浸式登录入口:
炫酷开屏: 为登录/注册页打造了专属的“星际”背景。通过 CSS 动画实现的流光背景与漂浮光球,为用户进入系统营造了极佳的“仪式感”。
表单细节: 优化了输入框的交互反馈状态,使得登录过程不仅是功能性的,更是美观的。
2026-01-26 02:08:20 +08:00
2026-01-25 20:12:33 +08:00
2026-01-26 02:08:20 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:10:36 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00
2026-01-25 20:12:33 +08:00

Novault Frontend

Novault 的前端应用,一个基于 React, TypeScriptVite 构建的现代化、本地优先的个人记账与资产管理应用。

特性

  • 现代化 UI 设计: 采用 Premium Glassmorphism高级玻璃拟态设计语言提供流畅、美观的用户体验。
  • 本地优先: 快速响应,数据安全。
  • 资产可视化: 包含账户关系图谱、收支报表等丰富的数据可视化功能。
  • 全功能记账: 支持多账户、多币种、预算管理、周期性交易等。
  • 响应式布局: 完美适配桌面端、平板和移动端设备。

🛠 技术栈

  • 核心框架: React + TypeScript
  • 构建工具: Vite
  • 路由: React Router
  • 状态/样式管理:
    • CSS Variables & Modules (无第三方 UI 库依赖,完全自定义设计系统)
    • Custom Hooks (Theme, Device, etc.)
  • 数据可视化: Apache ECharts (via echarts-for-react)
  • 图标: Iconify (主要使用 Solar Icons 系列)

📂 目录结构

frontend/
├── public/             # 静态资源 (图标, favicon)
├── src/
│   ├── assets/         # 编译期静态资源
│   ├── components/     # 通用及业务组件
│   │   ├── account/    # 账户相关组件
│   │   ├── budget/     # 预算相关组件
│   │   ├── common/     # 通用 UI 组件 (Layout, Navigation 等)
│   │   ├── transaction/# 交易相关组件
│   │   └── ...
│   ├── config/         # 配置文件 (如类别图标映射)
│   ├── hooks/          # 自定义 React Hooks (useTheme 等)
│   ├── pages/          # 页面视图 (路由目标)
│   ├── router/         # 路由配置
│   ├── services/       # API 服务层 (处理后端通信)
│   ├── styles/         # 全局样式系统
│   │   ├── variables.css   # 设计变量 (颜色, 字体, 间距)
│   │   ├── components.css  # 通用组件样式 (Card, Button, Input)
│   │   ├── themes.css      # 主题定义 (Light/Dark)
│   │   └── animations.css  # 动画定义
│   ├── types/          # TypeScript 类型定义
│   ├── utils/          # 通用工具函数 (格式化, 计算)
│   ├── App.tsx         # 根组件
│   └── main.tsx        # 入口文件
└── vite.config.ts      # Vite 配置

🚀 快速开始

预备环境

  • Node.js (推荐 v18+)
  • npm 或 yarn/pnpm

安装依赖

npm install

启动开发服务器

npm run dev

应用将在 http://localhost:5173 (默认端口) 启动。

构建生产版本

npm run build

构建产物将输出到 dist/ 目录。

🎨 设计系统

本项目采用自定义的 CSS 变量系统 进行样式管理,主要文件位于 src/styles/

  • 色彩: 定义了语义化的颜色变量(--color-primary, --color-bg, --glass-bg 等),支持自动深色模式切换。
  • 玻璃拟态: 通过 .glass-panel, .glass-card 等类名快速应用磨砂玻璃效果。
  • 响应式: 使用移动优先的策略,通过 CSS 媒体查询适配不同屏幕。

🤝 贡献规范

  1. 组件开发: 新组件应尽可能复用 styles/components.css 中的原子类或组件类。
  2. 服务层: 所有后端请求应封装在 src/services/ 下的对应服务文件中。
  3. 类型安全: 尽量避免使用 any,并在 src/types/ 中定义共享类型。

📄 License

MIT

Description
Novault Web前端项目
Readme 1.1 MiB
Languages
TypeScript 70.6%
CSS 29.2%