GitHub Blogger

English | 中文
GitHub Blogger is a VS Code WebView extension for managing GitHub Issues as blog posts. It supports rich Markdown rendering, live preview, and convenient post editing and publishing. This extension works with all VSCodium-based editors, such as Cursor, TRAE, Kiro, Google Antigravity, and more.
Features
- Manage and publish blog posts via the GitHub API, with text, images, and edit history (Git commits) stored in your blog repository
- A GitHub-native writing experience with support for common workflows such as Issues and Labels
- Light and dark modes, with editor appearance you can switch as needed
- Live preview and rich Markdown rendering, including GitHub Flavored Markdown, math formulas, Mermaid Diagram, GitHub Alerts, and more
- Built-in free image hosting: images are stored in your blog repository and accelerated via jsDelivr CDN
[!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 repository)
- 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 on command palette or edit your settings.json.
Example:
{
"github-blogger.token": "your-github-token",
"github-blogger.user": "your-github-username",
"github-blogger.repo": "your-github-repo",
"github-blogger.branch": "main",
"github-blogger.color-mode": "light"
}
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
Previews

Dark Mode

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