Moving Note

by Yusen
5
4
3
2
1
Score: 35/100
New Plugin

Description

This plugin has not been manually reviewed by Obsidian staff. Sync your notes via Git on desktop and GitHub API on mobile. Simple, reliable, cross-device.

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

Moving Note

中文 | English

A simple Obsidian sync plugin: Git on desktop, GitHub API on mobile. Full read-write support on both platforms.

Moving Note is a cross-device note sync plugin for Obsidian. On desktop, it leverages system Git for automatic commit and push. On Android, it uses the GitHub API for pulling and pushing changes — no local Git required. Simple to configure, one-click sync, keeping your notes consistent across devices.

✨ Features

  • Desktop: Automatic commit & push to GitHub via system Git
  • Android: Sync via GitHub API — pull remote changes and push local edits
  • One-click sync: Pull → detect local changes → push, all in one step
  • Auto-sync: Scheduled sync and sync-on-startup
  • Conflict handling: Desktop generates conflict report files; mobile uses remote as source of truth
  • Flexible config: Custom repo URL, branch name, commit message template

📦 Installation

  1. Download main.js, manifest.json, and styles.css
  2. Create a folder moving-note under .obsidian/plugins/ in your vault
  3. Place the files in that folder
  4. Enable Moving Note in Obsidian Settings → Community Plugins

⚙️ Configuration

Desktop

  1. Enter the Repository URL in settings (HTTPS or SSH)
    https://github.com/user/repo
    [email protected]:user/repo.git
    
  2. Set the Branch name (default: main)
  3. Ensure Git is installed and credentials are configured (SSH key or credential manager)

Android

  1. Enter the Repository URL in settings
  2. Click "Open GitHub to Create Token" — permissions are pre-filled, just confirm
  3. Paste the token and click "Verify & Login"
  4. Set the Branch name (must match the branch used on desktop)

🔄 Sync Logic

Desktop (full read/write)

Pull remote changes
  ↓
Commit local changes
  ↓
Push to remote
  • Automatically ensures the current branch matches settings
  • Stashes uncommitted changes before switching branches
  • Skips pull if remote branch doesn't exist (e.g., first push)

Android (read + write via API)

  • First sync: Downloads all files from remote
  • Subsequent syncs: Detects local changes → pulls remote updates → pushes local edits via GitHub Git Data API

📋 Commands

Command Description
Moving Note: Sync Full sync (pull → detect changes → push)
Moving Note: Pull Pull remote updates only
Moving Note: Commit & Push Commit and push local changes only
Moving Note: Show Sync Status View current repo and sync info

There's also a sync button in the sidebar ribbon for quick access.

📝 Commit Message Template

Available placeholders:

Placeholder Replaced with
{{date}} Current time, format: 2026-06-13 12:00:00
{{hostname}} Repository owner name from settings

Default template: vault backup: {{date}}

⚡ Auto-sync

Setting Description
Sync on startup Automatically sync once when Obsidian starts
Auto-sync interval Scheduled sync (minutes), set to 0 to disable

❓ FAQ

Q: Do I need to log in to GitHub? A: Optional on desktop, required on mobile.

Q: Can Android push changes? A: Yes. Android supports both pull and push via GitHub API.

Q: What about conflicts? A: On desktop, a conflict-files-moving-note.md file is generated listing conflicting files. Resolve them manually and sync again.

Q: Can I use GitLab / Gitea? A: Desktop supports any Git remote. Android currently only supports GitHub API.

🛠️ Development

npm install
npm run dev
npm run build

🙏 Acknowledgments

📄 License

MIT