Skip to content

Duosl/biji2md_tauri

Repository files navigation

biji2md - Get 笔记 Markdown 导出工具

将 Get 笔记批量同步并导出为 Markdown 文件,安全备份到本地

Platform


产品介绍

biji2md 是一款基于 Tauri 2 的非官方桌面工具,用于将 Get 笔记 批量同步并导出为本地 Markdown 文件。

本项目不是 Get 笔记官方产品,也不代表 Get 笔记或其所属公司的授权、背书或合作关系。Get 笔记为其权利人所有的产品名称。使用本工具前,请确认你有权访问对应账号中的笔记内容,并遵守 Get 笔记的服务条款与接口使用限制。

为什么需要 biji2md?

  • 本地备份:将 Get 笔记内容安全保存到本地
  • 格式自由:导出为通用 Markdown,可被 Obsidian、VS Code 等任何工具读取
  • 增量同步:日常同步新增内容,高效省时

功能特性

功能 说明
批量导出 一次同步 Get 笔记中的主笔记和子笔记,并导出为独立的 .md 文件
增量同步 通过本地索引记录同步游标,日常优先处理新增内容
全量同步 从头重新检查全部笔记,用于首次同步、修复缺失文件或确认历史笔记修改
目录结构 支持按知识库、按月份、按标签、平铺四种组织方式
父子笔记链接 支持 Obsidian Wikilink 和标准 Markdown 链接
缓存重导出 同步后保留本地笔记缓存,修改导出配置时可不重新请求接口直接重导出
YAML 元数据 每个文件包含笔记 ID、标签、创建时间、更新时间
自动更新 启动时静默检测,后台下载完成后一键重启更新
同步日志 日志持久化到本地文件,可离线查看历史诊断信息
跨平台 支持 macOS、Windows、Linux

下载安装

命令行安装(推荐)

一键安装最新版本:

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/Duosl/biji2md_tauri/main/install.sh | sh

# Windows (PowerShell)
iwr -useb https://raw.githubusercontent.com/Duosl/biji2md_tauri/main/install.ps1 | iex

安装指定版本或选择安装方式:

# macOS / Linux:指定版本
curl -fsSL https://raw.githubusercontent.com/Duosl/biji2md_tauri/main/install.sh | sh -s -- --version v0.4.0

# Linux:使用 deb 包安装
curl -fsSL https://raw.githubusercontent.com/Duosl/biji2md_tauri/main/install.sh | sh -s -- --method deb
# Windows:指定版本或使用 MSI 安装(需先下载脚本)
iwr -useb https://raw.githubusercontent.com/Duosl/biji2md_tauri/main/install.ps1 -OutFile install.ps1
.\install.ps1 -Version v0.4.0
.\install.ps1 -Method msi

手动下载

GitHub Releases 页面下载对应平台的安装包。

平台 下载文件
macOS (Apple Silicon / M 系列) macos_apple-silicon.dmg
macOS (Intel 芯片) macos_intel.dmg
macOS (不确定) macos_universal.dmg
Windows .msi 安装包
Linux .AppImage.deb

快速开始

第一步:获取 Token

打开应用后进入 设置 页面,在「Get 笔记 API 配置」区域填写你的 Bearer Token。详细获取教程点这里

Token 安全说明:Token 用于读取你的 Get 笔记数据,仅保存在本地,不会上传至任何服务端。

第二步:选择导出目录

在「导出设置」中选择导出目录。Markdown 文件会直接写入该目录,并按当前导出目录结构创建子目录。

第三步:开始同步

回到 同步 页面:

  • 增量同步:适合日常使用,优先处理新增内容
  • 全量同步:首次同步、需要重建本地文件,或修改过历史笔记时使用

📖 更多配置说明、导出格式和目录结构,请查看 详细使用指南


故障排除

同步失败

  1. Token 失效:检查 Token 是否正确,是否有过期
  2. 网络问题:确保网络连接正常,可访问 Get 笔记服务端
  3. 目录权限:确认导出目录有写入权限

增量同步未生效

如果新增的笔记没有被同步,尝试执行一次全量同步。

导出文件缺失

优先尝试执行一次全量同步。如果最近已经同步成功,也可以在设置页修改导出配置后使用缓存重导出,将本地缓存重新生成 Markdown。

修改导出配置后目录变化不符合预期

确认设置页提示的重导出流程是否已经完成。导出目录结构和链接格式按目录保存,不同导出目录可以拥有不同配置。

当前目录重新导出前要注意什么?

「在当前目录重新导出」会替换当前导出目录中的内容。建议将导出目录专门用于 biji2md,不要混放手工文件;如果不确定,请选择「导出到新目录」。

自动更新没有反应

  1. 确认当前应用是正式构建的 .app/安装包,而不是 tauri dev
  2. 确认 GitHub Releases 或镜像地址可匿名访问 latest.json 和更新包
  3. 确认 latest.json 中的签名与应用内置公钥匹配
  4. macOS 更新依赖 .app.tar.gz 和对应 .sig,不是 .dmg

参与贡献

欢迎提交问题反馈、文档改进和代码贡献。涉及 Get 笔记接口、Token、导出目录、文件替换或缓存重导出的改动,请在提交前说明影响范围,并优先保护用户本地数据。

环境要求

  • Node.js
  • npm
  • Rust
  • Tauri CLI

准备与运行

Fork 或克隆仓库后,在项目根目录安装依赖:

npm install

启动完整 Tauri 开发应用:

npm run dev

提交前检查

npm run frontend:typecheck
cargo check --manifest-path src-tauri/Cargo.toml

构建应用

# 构建所有平台
npm run build

# 平台特定构建
npm run build:mac
npm run build:mac-arm
npm run build:mac-intel
npm run build:windows
npm run build:linux

项目结构

biji2md/
├── src/                      # 前端 React 代码
│   ├── main.tsx             # 应用入口
│   ├── App.tsx             # 主应用组件
│   ├── pages/              # 页面组件
│   │   ├── SyncPage.tsx    # 同步页面
│   │   ├── SettingsPage.tsx # 设置页面
│   │   └── AutomationPage.tsx # 自动化页面
│   ├── hooks/              # React Hooks
│   │   ├── useSync.ts      # 同步状态管理
│   │   ├── useCache.ts     # 缓存信息和重导出
│   │   ├── useSettings.ts  # 设置管理
│   │   └── useUpdater.ts   # 自动更新
│   └── components/         # 通用组件
│       ├── Toolbar.tsx     # 工具栏
│       ├── OnboardingGuide.tsx  # 新手引导
│       └── RewardDialog.tsx     # 打赏弹窗
├── src-tauri/               # Tauri / Rust 后端
│   ├── src/
│   │   ├── api.rs          # 笔记 API 客户端
│   │   ├── sync.rs         # 同步流程编排
│   │   ├── export.rs       # Markdown 导出逻辑
│   │   ├── cache.rs        # 本地笔记缓存
│   │   ├── index.rs        # 本地同步索引管理
│   │   ├── history.rs      # 同步历史记录
│   │   ├── log.rs          # 同步日志持久化
│   │   ├── config.rs       # 配置管理
│   │   ├── state.rs        # 运行时同步状态
│   │   ├── types.rs        # 数据结构定义
│   │   └── commands.rs     # Tauri 命令接口
│   └── Cargo.toml
├── package.json
├── LICENSE
└── README.md

开源协议

本项目采用 GNU General Public License v3.0 or later(GPL-3.0-or-later),详见仓库根目录的 LICENSE

你可以将本项目用于学习、研究和个人自用,也可以在遵守 GPL-3.0-or-later 的前提下复制、修改和分发。

如果你发布或分发基于本项目修改后的版本,修改后的版本也需要继续使用 GPL-3.0-or-later,并按协议要求提供对应源代码、保留版权和许可证声明。

About

GET 笔记导入为 markdown,使用 tauri 实现的跨平台客户端

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors