Skip to content

hujiyo/Spaxis

Repository files navigation

spaxis

spaxis(事间轴)是一款可视化时间记录应用,支持多平台,基于 Flutter 实现。它允许用户以时间轴的方式管理和浏览事件,支持多轨道、缩放、平移、事件编辑等功能,适合个人时间管理、项目进度追踪等场景。

功能特性

  • 多粒度时间轴:支持从“十年”到“分钟”级别的缩放,平滑切换视图。
  • 事件管理:可添加、编辑、删除事件,支持时间段和时间点两种类型。
  • 多轨道显示:最多支持 5 个轨道,事件自动分配轨道避免重叠。
  • 可视化交互:支持手势缩放、平移、点击事件查看详情、长按添加事件。
  • 本地持久化:事件数据自动保存到本地(JSONL 文件)。
  • 跨平台支持:可运行于 Android、iOS、Windows、Linux、macOS。

依赖说明

主要目录结构

lib/
  main.dart         # 应用主入口,包含核心逻辑和 UI
android/           # Android 平台工程
ios/               # iOS 平台工程
windows/           # Windows 平台工程
linux/             # Linux 平台工程
macos/             # macOS 平台工程
pubspec.yaml       # 依赖与资源声明

运行与构建

  1. 环境准备

    • 安装 Flutter SDK
    • 配置好目标平台的开发环境(如 Android Studio、Xcode、VS、CMake 等)
  2. 获取依赖

    flutter pub get
  3. 运行项目

    • Android/iOS:
      flutter run
    • Windows/Linux/macOS:
      flutter run -d windows   # 或 linux/macOS
  4. 打包发布

    • Android:
      flutter build apk
    • Windows/Linux/macOS:
      flutter build windows   # 或 linux/macOS

代码结构简述

  • SpaxisEvent:事件数据模型,支持序列化/反序列化
  • SpaxisManager:事件与视图状态管理,负责事件增删改查、缩放、平移、数据持久化等
  • TimelineCanvas/TimelinePainter:自定义时间轴绘制与交互
  • 事件编辑、详情弹窗等 UI 组件

平台支持

  • Android
  • iOS
  • Windows
  • Linux
  • macOS

贡献与开发

目前项目未开放社区贡献。若需自定义或二次开发,建议直接在 lib/main.dart 中扩展事件模型和 UI 逻辑。

License

本项目暂未指定开源协议,禁止未经授权的商业使用。


如需详细开发文档或遇到问题,请参考 Flutter 官方文档或 issue 区反馈。

About

命迹:事间线软件式样的开发

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published