Beginner-friendly guide: clone → install → build → run → test. No prior experience required.
Everyone (all OS)
- Git
- Node.js 20.18.2 (project expects this exact version; Windows repo bundles a portable copy in
.tools/node-v20.18.2-win-x64) - npm (ships with Node)
- pnpm (optional; some CI scripts use it —
npm install -g pnpm) - Python 3.x (needed by node-gyp)
- A C/C++ build toolchain for native modules (node-gyp)
Windows
- PowerShell
- Visual Studio Build Tools 2022 (Desktop C++ workload) or full VS 2022
- 7zip in PATH (helpful for packaging; not strictly required to run dev builds)
macOS
- Xcode Command Line Tools:
xcode-select --install
Linux (Debian/Ubuntu examples)
build-essential python3 pkg-config libx11-dev libxkbfile-dev libsecret-1-dev
git clone https://github.com/Karthikprasadm/Sup-IDE.git
cd Sup-IDE- Windows (PowerShell, use bundled portable Node):
set PATH=%CD%\.tools\node-v20.18.2-win-x64;%PATH% node -v # should print v20.18.2
- macOS/Linux (use nvm/asdf or install Node 20.18.2 manually):
node -v # ensure v20.18.2
If you see a different version, switch to 20.18.2 before continuing.
From the repo root:
npm ciThis installs root deps and triggers installs inside build/, extensions/, remote/, test/, etc.
Run after every fresh install or lockfile change:
npm run apply-patches- Compile sources (core, extensions, out artifacts):
npm run compile- Build Sup React UI bundles:
npm run buildreact- Windows (PowerShell):
.\scripts\code.bat - macOS/Linux:
./scripts/code.sh
This opens the Sup-IDE (VS Code fork) window. Keep the terminal open.
For automatic rebuilds in another shell:
npm run watch- Browser unit tests:
npm run test-browser
- Node unit tests:
npm run test-node
- Smoke tests (after building):
npm run smoketest
src/— core editor/workbench (TypeScript/React/Electron)extensions/— built-in extensions’ sourceout/— generated build output (don’t edit; delete to clean)build/— build tooling (gulp tasks, scripts)scripts/— helper scripts (code.bat/code.shto run selfhost)product.json— product branding/config (Sup-specific)remote/— remote server/web piecestest/— automation, smoke, unit tests
If you changed code:
npm run compile
npm run buildreact # if you touched React bundlesFor faster iteration, keep npm run watch running.
- Remove built output:
rimraf out # or: rm -rf out - Fully clean and rebuild from scratch:
rimraf node_modules build/node_modules extensions/**/node_modules npm ci npm run apply-patches npm run compile npm run buildreact
Cannot find module ... zod/v4→ Re-runnpm run apply-patches.- node-gyp / native build errors:
- Windows: install VS Build Tools 2022 (C++ workload) + Python 3.x; restart shell.
- macOS: run
xcode-select --install. - Linux: install
build-essential+ required dev libs. - Ensure Node 20.18.2 (not newer).
- Unknown project config warnings (disturl/target/etc.) → Safe to ignore for dev.
- Missing
pnpmwhen a script asks →npm install -g pnpm. - React bundles missing →
npm run buildreact. - PowerShell chaining → use
;instead of&&. - Codicon/font decode warnings → cosmetic; ignore.
- Deprecation warnings (N-API) → ignore for dev.
git clone https://github.com/Karthikprasadm/Sup-IDE.git
cd Sup-IDE
set PATH=%CD%\.tools\node-v20.18.2-win-x64;%PATH%
npm ci
npm run apply-patches
npm run compile
npm run buildreact
.\scripts\code.batgit clone https://github.com/Karthikprasadm/Sup-IDE.git
cd Sup-IDE
# ensure node -v == v20.18.2 (use nvm/asdf if needed)
npm ci
npm run apply-patches
npm run compile
npm run buildreact
./scripts/code.shYou’re ready! If something breaks, re-run npm run apply-patches and confirm Node is 20.18.2. Ask for help anytime.