wee-b / Jotlet
git clone https://github.com/wee-b/Jotlet.git
v1.0.1 · today
随手记,本地日记小工具
—
stars, 24h
+104
stars, 7 days · #493
+104
stars, 30 days · #2,224
104
★ total · +104% this week
8
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageTypeScript
License—
Created2026-10-18 (2d ago)
Last pushtoday
Watchers0
OwnerUser
GitHub topics
Links
- GitHub: github.com/wee-b/Jotlet
- Releases · Issues · Hacker News mentions
README excerpt
Jotlet · 随手记 让每件事,都有迹可循。 下载 Windows 安装包 · 界面预览 · 本地开发 · 非商业许可证 Jotlet 是一个保存在本机的日历与事件追踪桌面应用。用日历安排时间,用事件串起每一步记录,无需账号、后端或云服务。 基于 Electron、TypeScript 和 Vite,当前提供 **Windows x64** 安装包。项目源码可见,采用 **PolyForm Noncommercial 1.0.0** 许可证,**仅限非商业用途**。 ## 功能 - **周/月日历**:默认周视图,支持迷你月历、日期跳转、前后翻页和回到今天。周视图只画整点线,单击选择半小时,按住向下拖动可选择更长时间;靠近边缘自动滚动,按 Esc 取消。 - **独立或关联日程**:日程可独立保存,也可绑定已有事件;创建并绑定新事件时,自动添加一条包含日程主题、描述及开始时间的初始记录。已关联日程直接显示事件名称。 - **全天日程与颜色**:提供五种浅色日程颜色。全天区域无日程时默认收起,有日程时默认展开,也可手动折叠。 - **事件追踪**:按事件整理进展,支持置顶、搜索、开始/结束时间,以及记录的追加、编辑和删除;记录按发生时间排列,可补录过去的进展。 - **本地数据与备份**:完整导出 `.jotlet` 文件,保留事件、记录、日程、颜色和关联关系。在设置中选择文件或拖入备份,解析预览后取消、合并或覆盖;Windows 安装时注册 `.jotlet` 文件关联,双击文件会先询问是否导入。 - **个人偏好**:在左下角「设置」中调整默认视图、日程时长、颜色和周视图起始时段,也可管理数据、备份和保存位置。 - **小窗口适配**:默认及最小窗口为 860 × 580,支持放大。紧凑工具栏、独立滚动区域和底部操作适配小尺寸;月历放不下的日程通过「还有 N 个日程」查看。 日历顶部的「只显示事件/全部显示」可筛选已关联现有事件的日程。删除日程不影响事件;删除事件不会连带删除日程,原日程将不再显示有效的事件关联。 ## 界面预览 | 日历周视图 | 事件追踪 | | ----------------------------------- | --------------------------------- | | | | | 日历偏好设置 | 数据与备份 | | ----------------------------------------- | ------------------------------------------- | | | | ## 下载与安装 前往 GitHub Releases,下载 `Jotlet-1.0.1-Setup.exe`。Release 同时提供 `SHA256SUMS.txt` 供校验。 1. 关闭正在运行的 Jotlet,打开安装包。 2. 首页选择「安装 Jotlet」或「卸载 Jotlet」。未检测到已安装版本时,卸载选项不可选;支持识别旧版 Squirrel 的卸载入口。 3. 选择安装后,阅读并接受非商业许可条款,分别选择**程序安装目录**和**数据保存目录**。两个目录应相互独立,不能互相包含。 4. 安装完成后启动应用。首次启动会使用选择的数据目录;如果已有数据需要迁移,会保留原位置副本。目标与当前位置都有数据时,拒绝自动覆盖。 安装面向当前 Windows 用户,请选择有写入权限的目录。卸载会保留数据文件夹和用户设置,只移除程序文件、快捷方式及卸载注册项。旧版 Squirrel 用户可先从向导卸载旧程序,再安装新版。 校验安装包(PowerShell): [code] 将输出与 `SHA256SUMS.txt` 中同名文件的值比较。 ## 数据保存与迁移 所有数据在本机读写,生产应用阻止外部网络请求。数据未加密,备份也包含完整内容。 | 文件/格式 | 用途 | | --------------------- | ---------------------------------------------------- | | `notes.json` | 事件与记录的定期快照 | | `calendar.json` | 日程、颜色和事件关联的定期快照 | | `*.json.journal` | 快照之后的增量变更,与对应 JSON 共同组成当前数据 | | `active-dataset.json` | 导入后指向当前使用的数据批次,事件和日历一起切换 | | `.jotlet-datasets/` | 导入的数据批次,保留旧批次文件供恢复 | | `*.bak` | 已有备份及旧版日历迁移前的原始文件,不再每次写入复制 | | `notes.json.v1.bak` | 旧版记录迁移为事件前保留的原始文件 | | `.jotlet` | 可导入的完整备份,包含事件和日程 | | JSON/Markdown 导出 | 仅包含事件与记录,供外部查看,不支持重新导入 | - **导入仅支持单个 `.jotlet` 文件**,不设文件大小上限,不接受 `.json`、`.md`、`.txt` 或 `.jetlet` 后缀;仍会校验备份格式与内容。 - 普通保存只将变更的事件或日程追加到增量日志,删除写入删除标记,不再重写完整数据集或复制旧文件。日志达到 4 MiB 且不小于快照时,在下一次写入前合并快照,以控制日志增长。启动时恢复快照与已提交日志,末尾未写完的变更不生效。 - 手动复制时请保留整个数据目录,包括 JSON、对应的 `.journal`、`active-dataset.json` 和 `.jotlet-datasets/`(若存在);跨设备恢复推荐使用 `.jotlet` 完整备份,导出时自动包含最新变更。 - 在「设置 → 数据与备份 → 解析与导入」选择文件或拖入单个 `.jotlet` 文件,点击「开始解析」。结果展示备份时间、事件/记录/日程数量、内容列表及合并时的重复和冲突统计,解析和取消均不会更改数据。 - **合并导入**:保留本地内容,跳过重复内容,同 ID 的不同内容另存一份,并修正日程关联;引用备份之外事件的日程作为独立日程导入。**覆盖当前数据**:再次确认后替换整套事件和日历,原数据文件保留。两种模式都继续使用当前保存文件夹,先准备新批次,再一次切换,失败时保留原数据。 - Windows 安装时为当前用户注册 `.jotlet` 文件类型、图标和打开命令。双击文件会启动或唤起 Jotlet,确认「要导入此文件吗?」后打开解析窗口;此时仍需选择合并或覆盖才会修改数据。卸载移除本程序的关联,并保留其他程序的关联设置。 - 在「设置 → 数据与备份」可更换数据目录。迁移成功后立即生效,原位置保留副本;设置中选择的新位置在后续启动时继续使用。 - 数据位置记录在 Electron 用户配置目录的 `data-location.json` 中;未使用安装向导时,默认直接使用该用户目录。目录不可访问或数据损坏时会提示错误,不会静默重置数据。 - 换设备或重装前,先导出 `