GitHub Blogger

English | 中文
GitHub Blogger is a VS Code extension for writing and managing blog posts via GitHub issues. It supports Markdown editing, live preview, and seamless publishing — all powered by GitHub.
In principle, it works with all VSCodium-based editors, such as Cursor, TRAE, Kiro and Google Antigravity.
✨ Features
- Manage and publish blog posts via GitHub issues
- GitHub-native interaction experience
- Markdown editing with live preview and plugin support (Math, Mermaid, etc.)
- Free image hosting support: images are stored in your blog repository and served via jsDelivr CDN
- All posts and edit history (as Git commits) are stored in your blog repository
[!IMPORTANT]
Your blog repository must be public for jsDelivr CDN to work (why, set visibility)
🚀 Quick Start
- Create a GitHub account (skip if you already have one)
- Create a public repository (skip if you want to use an existing one)
- Generate a GitHub Personal Access Token (classic) and select at least the
public_repo scope
- Install the GitHub Blogger extension from the Visual Studio Marketplace or Open VSX
- Open the command palette (Cmd + Shift + P / Ctrl + Shift + P), search for
Configure GitHub Blogger to set up
- Then run
Open GitHub Blogger and start writing!
⚙️ Update Configuration
To update extension settings, run Configure GitHub Blogger or edit VS Code settings.json directly. Example:
{
"github-blogger.token": "your-github-token",
"github-blogger.user": "your-github-username",
"github-blogger.repo": "your-github-repo",
"github-blogger.branch": "main"
}
🔐 GitHub PAT
This extension requires a GitHub Personal Access Token (classic) with at least one of the following scopes:
public_repo - minimum required scope when using a public repository (issues, labels, contents/git, etc.)
repo - only needed if you plan to access or create a private repository
⚠️ Notes
- Posts and images are stored under
archives and images in your blog repository
- The working branch is configured via
github-blogger.branch, with main as the default. In most cases, you do not need to change it. If the branch does not exist, post/image storage may fail, and images in posts may not display correctly.
📷 Screenshots

🙏 Acknowledgements
This project is built upon and inspired by the open-source community, including:
📝 License
MIT License © Frankie