TabBuilder
Project generator for VS Code, the terminal and JetBrains IDEs
TabBuilder generates production-ready projects rather than empty folders: clean architecture with the layers already separated, tooling configured out of the box, a folder structure that holds up as the project grows, and current best practices applied by default. Pick a framework and the result is a codebase you can commit to on the first run.
- Available on
- Distribution
- VS Code Marketplace(opens in a new tab)VS Code extensionv3.2stable
- JetBrains Marketplace(opens in a new tab)JetBrains pluginbeta
- npm(opens in a new tab)CLI (npm)stable
$ npm install -g tabbuilder-cmd-develop
- tabbuilder new
- tabbuilder doctor
- tabbuilder templates
- tabbuilder info
- Scope
- 11 frameworks across 5 languages.
$ npm install -g tabbuilder-cmd-develop ✔ Packages installed $ tabbuilder new Choose framework > React Angular Vue Next.js Node.js Laravel .NET Flutter ✔ Project created successfully
- Capabilities
- Rapid scaffolding
- CLI support
- VS Code extension
- JetBrains plugin
- Reusable templates
- Modern architecture
- Developer experience
- Cross platform
- Problem
- Starting a project means the same scaffolding every time — directory layout, config, entry points. Editor ecosystems make it worse: tooling written for one IDE has to be rebuilt from scratch for the next, so the same generator gets written three times and drifts apart three ways.
- Architecture
- One generation engine in Node.js, three thin clients. The engine owns the pipeline; filesystem access and user interaction sit behind interfaces so nothing in the core imports an editor API. Clients supply their own implementations of those interfaces: the VS Code extension talks to it in-process, the CLI wraps it directly, and the JetBrains plugin drives it as a child process over a line-delimited JSON protocol on stdio.
- Engineering
- Extracted the generation logic into a shared Core consumed by all three clients, abstracting filesystem and UI access behind interfaces so the engine has no dependency on the VS Code API — which removed the need to maintain three parallel copies of the same pipeline.
- Built framework support as Strategy implementations over a six-stage generation pipeline, so adding a framework does not require touching the pipeline itself.
- Ported the tool to IntelliJ by writing only the UI layer in Kotlin and driving the existing Node.js engine over an NDJSON protocol on stdio, reusing the generation logic instead of reimplementing it for the platform.
- Rebuilt the CLI experience on custom @inquirer/core prompts — split-screen wizard, live progress checklist — so terminal and editor users get the same flow.
- Built with
- Node.js
- JavaScript
- Kotlin
- VS Code Extension API
- IntelliJ Platform SDK
- NDJSON over stdio
- @inquirer/core
- npm
- monorepo