Repo of the Day
tjx666/awesome-vscode-extension-boilerplate
Published: Mar 16, 2024
Open repository ↗the best vscode extension boilerplate 🚀🚀🚀 - not sure if it's really the best, but seems pretty cool, ts, pnpm, and esbuild by default. I may try and build an extension for codestuff using this. Maybe then I can send a snippet from vs code directly to codestuff api.
Summary
awesome-vscode-extension-boilerplate is a TypeScript starter template for building Visual Studio Code extensions. It packages build, lint, formatting, and release tooling so engineers can focus on the extension's behavior rather than project plumbing. The repository metadata lists the license as MIT.
What it is useful for
This template is aimed at engineers starting a new VS Code extension and wanting an opinionated baseline. It comes with pnpm for package management, eslint and prettier for code quality, lint-staged with simple-git-hooks for pre-commit checks, and stale-dep for dependency maintenance. Bundling is handled by esbuild, and CI runs through GitHub Actions, which can publish the extension to both the Visual Studio Marketplace and the Open VSX registry. The same CI workflow can also auto-generate a changelog and create a GitHub release.
It is most useful for solo developers and small teams who want to ship to multiple registries without writing CI from scratch. It is less appropriate for engineers who prefer Yarn or npm, since the README documents pnpm throughout, or for those who need webpack-based bundling instead of esbuild. A specific test framework is not named in the features list, even though test appears as a topic, so the exact testing setup is unclear from the README.
How engineers can use it
After forking the repository and cloning it locally, run the setup script from the project directory:
cd <your-extension-directory>
npx setup-boilerplate
The README notes you can skip this step and edit the boilerplate manually.
For development, install dependencies and follow the standard VS Code extension debugging flow:
pnpm install
Then run and debug the extension as described in the official "Your First Extension" guide.
To publish, configure two GitHub Actions secrets in the repository settings: VS_MARKETPLACE_TOKEN for the Visual Studio Marketplace and OPEN_VSX_TOKEN for Open VSX. Trigger a release with:
pnpm release
A documented caveat: the auto-generated changelog and GitHub release steps require GitHub Actions to have write permission on the repository, which is not enabled by default and must be turned on in the repository settings. The README also displays an "Anti 996" badge alongside the MIT license metadata, so check the LICENSE file directly before redistributing or building on the project.