Mark Chang43 downloadsPublish notes to a GitHub Pages site and copy shareable links.
Publish Markdown notes from Obsidian to a GitHub repository, serve them through GitHub Pages (Jekyll), and copy a shareable link to your clipboard.
mermaid code blocks on the published site using mermaid.js loaded via CDN.title in the front matter if the note does not have one, so the published page has a proper heading.isDesktopOnly: false).The plugin is awaiting inclusion in the Obsidian community plugin directory. Once it is listed there, install it from Settings -> Community plugins -> Browse, then enable it.
main.js, manifest.json, styles.css) from the Releases page.<your-vault>/.obsidian/plugins/github-pages-share/ if it does not already exist.https://<owner>.github.io/<repo>), so pick something you are comfortable exposing in a public URL.owner/name.main.All settings live on the GitHub Pages share settings tab.
owner/name form.main. Empty input falls back to main.notes. Leading and trailing slashes are stripped.assets. Leading and trailing slashes are stripped.https://<owner>.github.io/<repo>. Trailing slashes are stripped automatically.This plugin talks to GitHub on your behalf. Please read the following before you enable it.
<vault>/.obsidian/plugins/github-pages-share/data.json, alongside the publish registry. Anyone who can read that file can read your token. Do not share or sync that file with people or systems you would not hand the token to directly. If you suspect the token has leaked, revoke it on GitHub immediately and create a new one.api.github.com (Contents, Repository, and Pages endpoints). It does not contact any other third-party host from inside Obsidian.mermaid from https://cdn.jsdelivr.net in the visitor's browser. The Obsidian-side plugin does not load any remote scripts, but anyone visiting your published note will, and their browser will share its IP address and request metadata with jsDelivr. Disable mermaid code blocks in notes you do not want to load remote scripts.When you publish a note, the plugin:
title to the front matter if the note has none._config.yml (Jekyll theme jekyll-theme-primer), index.md, _includes/head-custom.html (the mermaid bootstrap and callout stylesheet link), and assets/callouts.css. Existing files in those paths are left untouched.<pages-base-url>/<notes-folder>/<slug>.html and copies it to the clipboard."Set up pages repo" runs step 3 plus an attempt to enable GitHub Pages through the API. If the token lacks Pages write permission, the plugin surfaces a notice asking you to enable Pages manually on GitHub.
MIT.