Build VSCode Extensions

SkillDev tools

Build, test, and package VSCode extensions in the dart_node repo

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Build VSCode Extensions skill

What this skill tells your AI

The instructions your AI receives, as published by melbournedeveloper/dart_node in .claude/skills/build-extension/SKILL.md and read by ahel’s review.

This repo has one VSCode extension component:

ComponentLocationWhat it is
dart_node_vsixpackages/dart_node_vsix/The SDK package — Dart bindings for the VSCode extension API (commands, tree views, webviews, status bar, etc.)

dart_node_vsix SDK package

Test the SDK (Dart tests compiled to JS, run in VSCode):

cd packages/dart_node_vsix && npm install && npm run compile && npm test

What it provides — Dart bindings for:

  • commands, window, workspace, statusBar
  • TreeView, Webview, OutputChannel
  • ExtensionContext, Disposable
  • Mocha test API bindings
  • JS interop helpers (Promise, EventEmitter)

Architecture

Both use the same pattern: Dart → dart compile js → wrapper script → VSCode-compatible JS module.

The wrapper scripts (scripts/wrap-extension.js, scripts/wrap-tests.js) bridge dart2js output to VSCode's CommonJS require/module.exports system and inject polyfills (navigator, self) needed by dart2js async scheduling.

Signals

GitHub stars
113
Forks
2
Last commit
Jul 2026
Advanced
Catalog kind
skill
Gateway key
build-extension
Source
github.com/melbournedeveloper/dart_node