RapidKit is an open-source workspace platform that standardizes how teams build, scale, and deploy backend services.
FastAPI, NestJS, Spring Boot, Go/Fiber, and Go/Gin scaffolding with production-ready defaults.
27+ plug-and-play modules are available for FastAPI & NestJS projects. Spring Boot and Go kits run as npm-level generators.
Clean architecture • Zero boilerplate • Instant deployment.
💡 Recommended: Install the Workspai VS Code extension for AI-powered project creation, a visual workspace explorer, and context-aware coding assistance — all backed by this CLI.
Official CLI for creating and operating RapidKit workspaces and projects.
- Workspace-first lifecycle (
create workspace→bootstrap→setup→create project) - Multi-runtime support (Python, Node.js, Java, Go)
- Profile + policy enforcement (
warn/strict) - Cache and mirror lifecycle commands for stable environments
The rapidkit npm package remains the official RapidKit CLI.
It works alongside Workspai, which is a product developed by RapidKit.
| Component | Repository | Role |
|---|---|---|
| CLI | getrapidkit/rapidkit-npm | Official RapidKit npm CLI |
| VS Code Extension | getrapidkit/rapidkit-vscode | Workspai — visual explorer + AI features (recommended) |
| Core Engine | getrapidkit/rapidkit-core | Official RapidKit Core |
| Examples | getrapidkit/rapidkit-examples | Example workspaces and starter references |
- Node.js
>= 20.19.6 - Python
>= 3.10(for Python/Core workflows) - Java 21+ and Maven 3.9+ (optional, for Spring Boot projects)
- Go (optional, for Go projects)
npm install -g rapidkitOr run directly with npx:
npx rapidkit --helpAll three commands above render the same root help output.
npx rapidkit create workspace my-workspace --yes --profile polyglot
cd my-workspacenpx rapidkit bootstrap --profile polyglot
npx rapidkit setup python
npx rapidkit setup node --warm-deps
npx rapidkit setup java --warm-deps
npx rapidkit setup go --warm-depsnpx rapidkit create project fastapi.standard my-api --yes --skip-install
npx rapidkit create project fastapi.ddd my-api --yes --skip-install
npx rapidkit create project nestjs.standard my-nest --yes --skip-install
npx rapidkit create project springboot.standard my-spring --yes --skip-install
npx rapidkit create project gofiber.standard my-fiber --yes --skip-installnpx rapidkit create # Prompts: workspace | project
npx rapidkit create workspace <name> [--profile <profile>] [--author <name>] [--yes]
npx rapidkit bootstrap [--profile <profile>] [--json]
npx rapidkit setup <python|node|go|java> [--warm-deps]
npx rapidkit workspace policy show
npx rapidkit workspace policy set <key> <value>
npx rapidkit doctor
npx rapidkit doctor workspace [--fix]
npx rapidkit workspace list # Display all workspaces created on this system
npx rapidkit workspace share [--output <file>] [--include-paths] [--no-doctor]Use workspace share to export a portable JSON snapshot for team handoff,
debugging, and cross-machine diagnostics.
npx rapidkit workspace share
# default output: .rapidkit/reports/share-bundle.json
npx rapidkit workspace share --output ./team-share.json
npx rapidkit workspace share --include-paths
npx rapidkit workspace share --no-doctorBundle content includes:
- Workspace metadata (
name,profile, RapidKit version) - Discovered RapidKit projects (
relative_path, runtime, kit) - Workspace and project report file index
- Latest doctor evidence per project (unless
--no-doctoris used)
--include-paths is intended for internal teams only because it includes absolute filesystem paths.
RapidKit keeps the wrapper boundary explicit so users know which layer owns each action.
| Command family | Owner | Notes |
|---|---|---|
create workspace, workspace, cache, mirror |
RapidKit wrapper | Platform-level orchestration |
init |
Wrapper orchestrated | Chooses the right runtime flow for the current project |
dev, test, build, start |
Runtime aware | Delegates to the active project/runtime when available |
doctor |
Wrapper system check | Checks host prerequisites by default |
doctor workspace |
Workspace health | Full workspace scan with project-level details and fixes |
Use npx rapidkit doctor for a quick host pre-flight and npx rapidkit doctor workspace inside a workspace for the full health picture.
npx rapidkit doctor workspacereuses cached project scans when valid and refreshes evidence under.rapidkit/reports/doctor-last-run.json.npx rapidkit doctor workspace --fixonly executes actionable fix commands.- URL-based fixes are recorded as manual guidance (for example, install pages) and are not executed as shell commands.
- Go project fixes that require
go mod tidyare skipped when the Go toolchain is not available, with a clear install-and-rerun hint.
npx rapidkit create project <kit> <name> [--yes] [--skip-install]
npx rapidkit init
npx rapidkit dev
npx rapidkit test
npx rapidkit build
npx rapidkit startnpx rapidkit cache <status|clear|prune|repair>
npx rapidkit mirror <status|sync|verify|rotate>minimal— baseline workspace scaffoldingjava-only— Java-focused workspacepython-only— Python-focused workspacenode-only— Node.js-focused workspacego-only— Go-focused workspacepolyglot— Python + Node.js + Go + Javaenterprise— polyglot + governance-oriented checks
mode in .rapidkit/policies.yml controls enforcement:
warn(default): report violations, continuestrict: block incompatible operations
Manage .rapidkit/policies.yml via CLI (recommended, avoids manual YAML edits):
npx rapidkit workspace policy show
npx rapidkit workspace policy set mode strict
npx rapidkit workspace policy set dependency_sharing_mode shared-runtime-caches
npx rapidkit workspace policy set rules.enforce_toolchain_lock trueSupported keys:
modedependency_sharing_moderules.enforce_workspace_markerrules.enforce_toolchain_lockrules.disallow_untrusted_tool_sourcesrules.enforce_compatibility_matrixrules.require_mirror_lock_for_offline
setup <runtime> validates toolchain and updates .rapidkit/toolchain.lock.
--warm-deps adds optional dependency warm-up:
- Node: lock/dependency warm-up in Node project directories
- Go: module warm-up in Go project directories
- Python: accepted, currently reports node/go scope
Warm-deps behavior is non-fatal by design and reports explicit outcome (completed / failed / skipped).
For the best RapidKit experience, use the Workspai VS Code extension — it wraps this CLI with a visual workspace explorer, AI-powered project creation, and context-aware coding assistance.
| Feature | CLI | Extension |
|---|---|---|
| Create workspace / project | ✅ | ✅ Visual wizard |
| AI Create — describe → scaffold | ❌ | ✅ |
| Project Assistant (context-aware Q&A) | ❌ | ✅ |
| Workspace tree explorer | ❌ | ✅ |
| Module catalog browser | ❌ | ✅ |
One-click rapidkit init / dev / test |
❌ | ✅ |
| Inline AI on every workspace item | ❌ | ✅ |
Search Workspai in the VS Code Extensions marketplace, or:
code --install-extension getrapidkit.workspaiThe extension calls this CLI under the hood — both tools work together seamlessly. You do not need to install the CLI separately when using the extension.
- Extension repository: https://github.com/getrapidkit/rapidkit-vscode
Use this map to avoid overlap when editing CI:
.github/workflows/ci.yml- Build/lint/typecheck/tests/coverage matrix
- General quality and contract gates
.github/workflows/workspace-e2e-matrix.yml- Cross-OS workspace lifecycle smoke
- Setup (
--warm-deps) + cache/mirror ops - Chaos/non-fatal warm-deps behavior (Ubuntu job)
.github/workflows/windows-bridge-e2e.yml- Native Windows bridge/lifecycle checks
.github/workflows/e2e-smoke.yml- Focused bridge regression smoke (fast, narrow scope)
.github/workflows/security.yml- Security scanning and policy checks
Primary docs live under docs/:
- General docs index: docs/README.md
- Setup details: docs/SETUP.md
- Doctor command: docs/doctor-command.md
- Workspace marker spec: docs/WORKSPACE_MARKER_SPEC.md
- Config file guide: docs/config-file-guide.md
- Package manager policy: docs/PACKAGE_MANAGER_POLICY.md
- Security: docs/SECURITY.md
- Development: docs/DEVELOPMENT.md
npm ci
npm run build
npm run test
npm run lint
npm run typecheckLink local CLI globally for manual testing:
npm run install:local
npx rapidkit --version- If setup output looks stale, run
npx rapidkit setup <runtime>again to refresh.rapidkit/toolchain.lock. - If dependency warm-up is skipped, verify you are inside the corresponding project directory (
package.jsonfor Node,go.modfor Go). - For strict-mode blocks, inspect
.rapidkit/policies.ymland workspace profile in.rapidkit/workspace.json.
MIT — see LICENSE.