FastEdge VSCode Extension

April 1, 2026 · View on GitHub

A VS Code extension for building, running, and debugging Gcore FastEdge applications — with a Postman-like interface for crafting requests and inspecting responses.

Supports both HTTP apps and CDN apps across three languages:

Rust  JavaScript  AssemblyScript 
App TypeLanguagesSDK
HTTPRust, JavaScriptFastEdge-sdk-rust, FastEdge-sdk-js
CDNRust, AssemblyScriptproxy-wasm-sdk-rust, proxy-wasm-sdk-as

How it works

The extension compiles your code into a WASM binary using language-specific build tools, then serves it locally using a bundled debugger — no external tools required.

A webview panel opens inside VS Code where you can:

  • Build requests (URL, method, headers, body)
  • Send them to your running app
  • Inspect the response (status, headers, body)
  • Load and save test configurations

Each app gets its own isolated server instance on a port in the range 5179–5188, so you can debug multiple apps in the same workspace simultaneously.

Prerequisites

You need the build tools for your chosen language installed:

Rust (HTTP or CDN apps):

rustup target add wasm32-wasip1

JavaScript (HTTP apps):

npm install --save-dev @gcoredev/fastedge-sdk-js

AssemblyScript (CDN apps):

npm install --save-dev assemblyscript @assemblyscript/wasi-shim @gcoredev/proxy-wasm-sdk-as

More detail can be found in the SDK documentation linked above.

Installing the extension

This extension can be installed from the Visual Studio Marketplace: FastEdge Launcher

It is also possible to install from source: Releases

Running your first application

Press F5 in VS Code (or Command Palette → Debug: Start Debug).

When running for the first time, you'll need a .vscode/launch.json. The easiest way is to let the extension create one:

Command Palette (Ctrl+Shift+P) → FastEdge: Initialize workspace (create launch.json)

Example launch.json

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "FastEdge App Runner: Launch",
      "type": "fastedge",
      "request": "launch",
      "entrypoint": "file"
    }
  ]
}

The entrypoint field controls how the build finds your source code:

ValueBehavior
"file" (default)Builds the currently active editor file
"package"Builds from the "main" field in package.json (JavaScript only)

These are the only configuration values read from launch.json. Runtime arguments (env vars, headers, etc.) are configured separately — see Runtime Configuration below.

Language detection

The extension auto-detects your project language:

IndicatorDetected as
VS Code language ID = rustRust
asconfig.json exists at project rootAssemblyScript
JS/TS file without asconfig.jsonJavaScript

Commands

Available from the Command Palette (Ctrl+Shift+P):

CommandDescription
Debug: FastEdge App (Current File)Build the active file and start the debugger
Debug: FastEdge App (Package Entry)Build from package.json main field and start the debugger
FastEdge: Initialize workspaceCreate .vscode/launch.json with default configuration
FastEdge (Generate mcp.json)Add the FastEdge MCP Server to your workspace
FastEdge (Setup Codespace Secrets)Configure GitHub Codespaces secrets for FastEdge

Explorer context menu

Right-click actions in the file explorer:

CommandAppears onDescription
FastEdge: Load in Debugger.wasm filesLoad a pre-compiled WASM binary directly into the debugger
FastEdge: Load Config in Debugger*test.json filesLoad a test configuration file into the debugger

Runtime Configuration

Environment variables, secrets, request headers, and response headers are configured through test configuration files — not launch.json.

Primary: fastedge-config.test.json

The debugger UI provides built-in controls to set environment variables, secrets, and headers. These are saved to and loaded from fastedge-config.test.json in your app root, using native file dialogs.

Alternative: dotenv files

You can also provide runtime arguments via .env files that the extension auto-discovers from your app root directory.

Please be aware that if you are adding sensitive information to these files, they should be added to your .gitignore:

# VSCode workspace
.vscode/

# dotenv files
.env
.env.*

# Build artifacts
.fastedge-debug/

For more information on how the extension locates and uses dotenv files, see DOTENV.md.

Settings

SettingDescription
fastedge.cliVersionThe version of the bundled debugger (read-only)
fastedge.apiUrlDefault FastEdge API URL for MCP server configuration

To view the bundled debugger version:

  1. Open Settings (Ctrl+, or Cmd+,)
  2. Search for "FastEdge"