Obsidian plugin that allows a vault to be stored in a Github Wiki, or edit existing Wikis with Obsidian.
This plugin makes outbound HTTPS requests to github.com to clone, fetch, and push your wiki repository. There are four user-controlled triggers for these requests (all toggleable in Settings → GitHub Wiki):
0); set to a positive number to opt in.No data is sent to anywhere other than the GitHub wiki repository you configure (https://github.com/<owner>/<repo>.wiki.git). The plugin does not collect telemetry, analytics, or crash reports.
The plugin offers two ways to authenticate with GitHub:
repo scope (required to read and write the private .wiki.git repository) and no client secret is involved. Signing out removes the token from your device only — to fully revoke the grant, use GitHub → Settings → Applications → Authorized OAuth Apps.repo scope (generate at https://github.com/settings/tokens). Use this if you'd rather not authorize the shared OAuth App.Obsidian loads plugins from <vault>/.obsidian/plugins/<plugin-id>/. The plugin id for this project is obsidian-github-wiki. Three files must live in that folder for Obsidian to load it: main.js, manifest.json, styles.css.
You can either keep this repo somewhere else and symlink it into a vault, or clone it directly inside the vault's plugins folder. Symlink is recommended — one checkout, multiple test vaults.
npm install
npm run dev # esbuild watch; rebuilds main.js on every save
Leave this running. npm run build instead for a one-shot production build.
Pick or create a scratch vault (a normal folder is fine — Obsidian → Open another vault → Create new vault). Then link this repo as the plugin folder:
Windows (PowerShell, run as admin OR with Developer Mode enabled):
$vault = "C:\path\to\YourVault"
New-Item -ItemType Junction -Path "$vault\.obsidian\plugins\obsidian-github-wiki" -Target "C:\Users\ben\projects\obsidian_github_wiki"
macOS / Linux:
VAULT=~/path/to/YourVault
ln -s "$PWD" "$VAULT/.obsidian/plugins/obsidian-github-wiki"
(If .obsidian/plugins/ doesn't exist yet, mkdir -p it first.)
Wiki. Top-level files inside this vault folder map to wiki pages..wiki.git repo until you save a page through the web UI.main.js.main.js change and is worth installing for plugin work.The plugin is mobile-compatible (isDesktopOnly: false). To test on Obsidian mobile, you need the built files inside a vault that syncs to your device — Obsidian Sync, iCloud, Syncthing, etc. The dev-mode symlink trick doesn't work on mobile; just npm run build and copy main.js, manifest.json, styles.css into the synced vault's plugins folder.