TimeWidgets 是一款专为学生设计的智能课程表应用,集成了桌面小组件、灵动岛通知、天气显示、倒计时等多项实用功能。旨在帮助学生更高效地管理时间,不错过每一节精彩课程。
- 智能课表管理:
- 支持单双周课程设置。
- 灵活的课程触发规则。
- 直观的课表编辑界面。
- 桌面小组件:
- 将课表、时间、天气等信息直接显示在桌面上。
- 支持自定义布局和位置。
- 灵动岛体验(开发中):
- 独特的灵动岛风格通知和状态展示。
- 多窗口共存模式,提供无缝交互体验。
- 临时调课:
- 支持按天或按节进行临时调课。
- 轻松应对突发的课程变动。
- 倒计时:
- 记录考试、放假等重要日期的倒计时。
- 天气集成:
- 实时显示天气信息,出行早知道。
- 个性化定制:
- 支持 Material Design 3 动态色彩主题。
- 多种界面缩放和布局选项。
- 性能优化:
- 针对 Windows 平台深度优化,低内存占用。
- 激进的资源释放策略,确保系统流畅运行。
本项目基于 Flutter 开发,主要使用了以下技术和库:
- Flutter (Windows): 跨平台 UI 框架。
- Window Management:
bitsdojo_window: 自定义窗口标题栏和边框。window_manager: 窗口尺寸、位置和状态管理。desktop_multi_window: 支持多窗口(灵动岛功能)。
- System Integration:
system_tray: 系统托盘集成。launch_at_startup: 开机自启支持。
- State Management:
provider. - Networking:
http(用于天气和 NTP 时间同步). - Data Storage:
shared_preferences, JSON 文件存储.
- Flutter SDK >= 3.10.0
- Dart SDK >= 3.0.0 < 4.0.0
- Windows 10/11
flutter pub get# 运行主程序
flutter run -d windowsflutter build windows- 初次启动:应用启动后,建议先进入设置页面进行基础配置。
- 课表导入/编辑:点击系统托盘图标,选择“课表编辑”来录入您的课程信息。
- 桌面布局:在托盘菜单中开启“编辑模式”,可以自由拖动桌面组件的位置。
- 临时调课:通过托盘菜单的“临时调课”功能,快速调整特定日期的课程安排。
本项目采用 Apache License 2.0 许可证。