# Spaxis **Repository Path**: hujiyo/spaxis ## Basic Information - **Project Name**: Spaxis - **Description**: 命迹:事间线软件式样的开发 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-07-04 - **Last Updated**: 2025-07-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # spaxis **spaxis**(事间轴)是一款可视化时间记录应用,支持多平台,基于 Flutter 实现。它允许用户以时间轴的方式管理和浏览事件,支持多轨道、缩放、平移、事件编辑等功能,适合个人时间管理、项目进度追踪等场景。 ## 功能特性 - **多粒度时间轴**:支持从“十年”到“分钟”级别的缩放,平滑切换视图。 - **事件管理**:可添加、编辑、删除事件,支持时间段和时间点两种类型。 - **多轨道显示**:最多支持 5 个轨道,事件自动分配轨道避免重叠。 - **可视化交互**:支持手势缩放、平移、点击事件查看详情、长按添加事件。 - **本地持久化**:事件数据自动保存到本地(JSONL 文件)。 - **跨平台支持**:可运行于 Android、iOS、Windows、Linux、macOS。 ## 依赖说明 - [Flutter SDK](https://flutter.dev/) (>=2.17.0 <4.0.0) - [path_provider](https://pub.dev/packages/path_provider):用于本地文件存储 - [flutter_lints](https://pub.dev/packages/flutter_lints):代码规范检查(开发依赖) ## 主要目录结构 ``` lib/ main.dart # 应用主入口,包含核心逻辑和 UI android/ # Android 平台工程 ios/ # iOS 平台工程 windows/ # Windows 平台工程 linux/ # Linux 平台工程 macos/ # macOS 平台工程 pubspec.yaml # 依赖与资源声明 ``` ## 运行与构建 1. **环境准备** - 安装 [Flutter SDK](https://flutter.dev/docs/get-started/install) - 配置好目标平台的开发环境(如 Android Studio、Xcode、VS、CMake 等) 2. **获取依赖** ```sh flutter pub get ``` 3. **运行项目** - Android/iOS: ```sh flutter run ``` - Windows/Linux/macOS: ```sh flutter run -d windows # 或 linux/macOS ``` 4. **打包发布** - Android: ```sh flutter build apk ``` - Windows/Linux/macOS: ```sh flutter build windows # 或 linux/macOS ``` ## 代码结构简述 - `SpaxisEvent`:事件数据模型,支持序列化/反序列化 - `SpaxisManager`:事件与视图状态管理,负责事件增删改查、缩放、平移、数据持久化等 - `TimelineCanvas`/`TimelinePainter`:自定义时间轴绘制与交互 - 事件编辑、详情弹窗等 UI 组件 ## 平台支持 - Android - iOS - Windows - Linux - macOS ## 贡献与开发 目前项目未开放社区贡献。若需自定义或二次开发,建议直接在 `lib/main.dart` 中扩展事件模型和 UI 逻辑。 ## License 本项目暂未指定开源协议,禁止未经授权的商业使用。 --- 如需详细开发文档或遇到问题,请参考 Flutter 官方文档或 issue 区反馈。