一个轻量级、用户友好的单页面 Web 应用,用于记录、统计和管理个人重复性行为或活动。
- 用户注册与登录
- 邀请码机制(邀请码:
我要飞) - 会话管理
- 起飞/降落操作
- 实时飞行计时
- 详细飞行日志填写
- 支持多种状态标记(迫降、空难等)
- 总飞行次数与平均时长
- 本周/本月飞行统计
- 最近30天飞行频率图表
- 实时数据更新
- 月度日历展示
- 热力图显示飞行频率
- 点击查看当日详细记录
- 月份导航
- 完整飞行记录列表
- 分页显示(每页20条)
- 详细信息查看
- 时间排序
- 单次飞行时长 Top 10
- 燃料消耗排行榜 Top 10
- 月度飞行统计
- JSON/CSV 格式数据导出
- JSON 数据导入(覆盖模式)
- 完整数据备份与恢复
- CRT雷达版暗黑荧光风主题 - 以黑底 + 亮黄系点缀为主的专业驾驶舱风格
- 智能主题切换 - 右上角一键切换亮色/暗色主题
- 完整颜色规范 - 基于 #1e1e1e 主背景和 #ffd65c 高亮色的完整配色系统
- CRT扫描线效果 - 暗色主题下的科技感视觉特效
- 统一设计语言 - 所有UI元素采用4px统一圆角设计
- Chart.js主题适配 - 图表颜色随主题自动调整
- 本地存储偏好 - 自动保存用户主题选择
- Alpine.js - 响应式交互框架
- Tailwind CSS - 现代化样式框架
- Chart.js - 数据可视化图表
- CSS Variables - 主题系统实现技术
- LocalStorage - 主题偏好本地存储
- Node.js - JavaScript 运行时
- Express.js - Web 应用框架
- SQLite 3 - 轻量级数据库
npm installnpm startnpm run dev应用将在 http://localhost:3000 启动。
- 打开应用,点击"立即注册"
- 填写用户名、密码
- 输入邀请码:
我要飞 - 点击注册,自动登录
- 在主页面点击"起飞"开始计时
- 完成活动后点击"降落"
- 填写飞行详情(可选)
- 点击保存完成记录
- 主页面:查看统计数据和趋势图表
- 日历视图:月度视图查看飞行分布
- 表格视图:详细记录列表
- 排行榜:个人最佳记录
- 数据管理:导入导出数据
- 点击右上角的主题切换按钮(🌙 暗色 / ☀️ 亮色)
- 享受CRT雷达版暗黑荧光风主题的科技感体验
- 主题选择自动保存,下次访问自动恢复
参考项目根目录的 sample-data.json 文件。
startTime: 起飞时间戳(毫秒)endTime: 降落时间戳(毫秒)duration: 持续时间(秒,自动计算)flightNumber: 航班号(可选)fuelConsumption: 燃料消耗(可选)forcedLanding: 是否迫降(布尔值)airCrash: 是否空难(布尔值)flightAttendant: 空姐(可选)copilot: 副机长(可选)hangar: 机库(可选)cabinPressure: 舱压(可选)remarks: 备注(可选)
FlightLog/
├── server.js # 主服务器文件
├── package.json # 项目配置
├── models/
│ └── database.js # 数据库模型
├── routes/
│ ├── auth.js # 认证路由
│ └── flights.js # 飞行记录路由
├── middleware/
│ └── auth.js # 认证中间件
├── public/
│ ├── index.html # 主页面
│ └── app.js # 前端 JavaScript
└── sample-data.json # 示例数据
POST /api/auth/register- 用户注册POST /api/auth/login- 用户登录POST /api/auth/logout- 用户登出GET /api/auth/status- 检查登录状态
POST /api/flights- 创建飞行记录GET /api/flights- 获取飞行记录列表GET /api/flights/:id- 获取单个记录详情GET /api/flights/stats/overview- 获取统计概览GET /api/flights/stats/daily- 获取每日统计GET /api/flights/calendar/:year/:month- 获取日历数据GET /api/flights/export/json- 导出 JSONGET /api/flights/export/csv- 导出 CSVPOST /api/flights/import- 导入数据
- 数据安全:建议定期导出数据进行备份
- 邀请码:注册时必须输入正确的邀请码"我要飞"
- 数据导入:导入操作会覆盖现有数据,请谨慎操作
- 浏览器兼容:建议使用现代浏览器以获得最佳体验
MIT License
- 新增 CRT雷达版暗黑荧光风主题
- 实现完整的主题切换系统
- 添加CRT扫描线特效和边框辉光
- 优化所有页面和模态框的主题适配
- Chart.js图表自动适配主题颜色
- 排行榜PK榜特殊紫色渐变主题设计
- 主题偏好本地存储功能
- 首次发布
- 完整的用户认证系统
- 飞行记录与统计功能
- 日历、表格、排行榜视图
- 数据导入导出功能