Skip to content

liulc-tech-star/SenseofGainCalendar

Repository files navigation

🌟 SenseofGain Calendar - 获得感日历

Kotlin Android License

一款轻量级的正向复盘日历应用

以日历为核心 · 极简三行模板 · 正向表情可视化

功能特性快速开始使用指南技术架构


📖 项目简介

SenseofGain Calendar 是一款注重隐私保护用户体验的本地复盘工具。通过日历视图、三行极简复盘模板和正向表情系统,帮助用户以最低负担记录每日成果与情绪,培养正向思维习惯。

🎯 核心价值

  • 🔒 完全本地化 - 无网络请求,数据完全掌控在你手中
  • 极简高效 - 1分钟完成每日复盘,降低使用门槛
  • 😊 正向引导 - 8款正向表情与积极短句,强化获得感
  • 🎨 现代设计 - Material 3 设计语言,流畅的交互体验

✨ 功能特性

📅 智能日历视图

  • 年月自由切换(支持点击箭头或左右滑动)
  • 日期点选查看或编辑复盘记录
  • 已复盘日期智能标注(圆点标记)
  • 表情替换日期数字显示
  • 当前日期高亮提示

✍️ 极简复盘系统

采用固定三行输入模板,降低思考负担:

  1. 今日完成3件事 - 记录具体行动
  2. 1个小成果/反馈 - 捕捉正向反馈
  3. 今日心情/感受 - 觉察情绪状态

特色功能:

  • 每个输入框配备快捷短语
  • 自动保存与更新机制
  • 支持记录修改和删除

😊 正向表情系统

提供 8 款精心挑选的正向表情:

😊 💪 🎉 ⭐ 🌈 ✨ 🔥 💖

  • 每个表情关联积极引导短句
  • 长按日期快速选择表情
  • 表情自动填充心情引导语

💾 本地存储保障

  • Room Database 本地持久化
  • 完全离线运行,零网络请求
  • 数据隐私安全,无第三方收集
  • 完整的 CRUD 操作支持

🚀 快速开始

环境要求

工具/环境 版本要求
Android Studio Hedgehog (2023.1.1)+
JDK 11+
Android SDK API 26+ (Android 8.0+)
Kotlin 2.1.20+

安装步骤

  1. 克隆项目

    git clone https://github.com/liulc-tech-star/SenseofGainCalendar.git
    cd SenseofGainCalendar
  2. 打开项目

    • 启动 Android Studio
    • 选择 File → Open 并导航到项目目录
    • 等待 Gradle 自动同步完成
  3. 运行应用

    • 连接 Android 设备或启动模拟器(API 26+)
    • 点击工具栏的 Run 按钮(▶️
    • 选择目标设备并等待应用安装

📱 使用指南

首次启动

应用首次启动会展示隐私政策对话框,点击 "同意并继续" 进入主界面。

日常操作

📝 创建复盘记录

  1. 在日历视图中点击目标日期
  2. 填写三行复盘内容(可使用快捷填充)
  3. 点击 "选择心情表情" 选择当日心情
  4. 点击 "保存复盘" 完成记录

🔍 查看历史记录

  • 点击带有标记的日期查看已保存的复盘内容
  • 修改内容后点击 "更新复盘" 保存更改
  • 点击右上角删除图标可删除记录

🎨 表情快捷操作

  • 方法一:点击 "选择心情表情" 按钮
  • 方法二:长按日历中的日期
  • 选择表情后会自动填充对应的引导短句

📆 月份切换

  • 点击箭头:使用页面顶部的左右箭头
  • 滑动切换:在日历区域左右滑动

🏗️ 技术架构

技术栈

🔹 开发语言      Kotlin 100%
🔹 UI 框架       Jetpack Compose + Material 3
🔹 本地数据库    Room Database 2.7.0
🔹 架构模式      MVVM (Model-View-ViewModel)
🔹 异步处理      Kotlin Coroutines + Flow
🔹 日期处理      Java Time API (LocalDate)
🔹 依赖管理      手动注入(轻量化)

项目结构

com.example.period_app_01/
│
├── 📁 data/                          # 数据层
│   ├── ReviewRecord.kt              # 复盘记录实体类
│   ├── ReviewRecordDao.kt           # Room DAO 接口
│   ├── ReviewRepository.kt          # 数据仓库层
│   ├── DatesDatabase.kt             # Room 数据库配置
│   └── DatesConverter.kt            # 日期类型转换器
│
├── 📁 viewmodel/                     # 视图模型层
│   └── ReviewViewModel.kt           # 复盘功能 ViewModel
│
├── 📁 ui/                            # UI 展示层
│   ├── 📁 components/               # 可复用 Compose 组件
│   │   ├── CalendarComponent.kt        # 日历视图组件
│   │   ├── ReviewInputComponent.kt     # 复盘输入组件
│   │   └── EmojiPickerComponent.kt     # 表情选择组件
│   │
│   ├── 📁 screens/                  # 应用界面
│   │   └── ReviewCalendarScreen.kt     # 主界面(日历+复盘)
│   │
│   └── 📁 theme/                    # Material 主题配置
│       ├── Color.kt                    # 颜色定义
│       ├── Theme.kt                    # 主题配置
│       └── Type.kt                     # 字体排版
│
└── MainActivity.kt                   # 应用程序入口

核心依赖

// Jetpack Compose
androidx.compose.ui:ui
androidx.compose.material3:material3
androidx.activity:activity-compose

// Room Database
androidx.room:room-runtime:2.7.0
androidx.room:room-ktx:2.7.0

// Kotlin Coroutines
org.jetbrains.kotlinx:kotlinx-coroutines-android

🎨 设计理念

轻量化原则

  • 无冗余功能和侵入式广告
  • 简洁直观的用户界面
  • 流畅的操作体验(60fps+)

低门槛设计

  • 点击即可记录,无复杂流程
  • 快捷短语降低输入成本
  • 1分钟完成日常复盘

隐私优先

  • 全部数据本地存储
  • 零网络请求,零数据上传
  • 不收集任何用户信息

正向心理学

  • 精选8款正向表情符号
  • 积极的引导短句设计
  • 强化每日获得感体验

📋 版本历史

v1.0 (Current)

✅ 日历视图与交互系统
✅ 极简三行复盘模板
✅ 正向表情选择功能
✅ Room 本地数据存储
✅ 快捷填充辅助系统
✅ 完整的 CRUD 操作


🛠️ 后续规划

  • 数据备份与恢复功能
  • 导出功能(支持 TXT/PDF)
  • 扩展表情库(自定义表情)
  • 统计分析仪表盘(情绪趋势、完成事项统计)
  • 深色模式主题
  • 桌面小部件(Widget)
  • 每日提醒通知

⚠️ 注意事项

项目 说明
系统要求 Android 8.0 (API 26) 及以上版本
数据安全 记录仅本地存储,卸载应用会清空数据
权限需求 仅需存储权限,无其他敏感权限
网络依赖 完全离线运行,无需网络连接

⚠️ 数据备份提醒:当前版本不支持自动备份,建议定期手动导出数据(功能开发中)


👨‍💻 关于作者

微同学


📄 开源协议

本项目采用 MIT License 开源协议。


🤝 贡献指南

欢迎提交 Issue 和 Pull Request!

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

💖 支持项目

如果这个项目对你有帮助,欢迎:

  • ⭐ Star 本项目
  • 🐛 提交 Bug 反馈
  • 💡 分享使用体验
  • 📢 推荐给朋友

用正向思维,记录每一天的获得感 ✨

Made with ❤️ by 微同学

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors