VS Code Extension
The SemanticFed data-federation platform, in your editor. Manage connectors, data sources, semantic models, federated queries, and run history against the Burdenoff workspace + global GraphQL gateways — without leaving VS Code.
- Publisher:
burdenoff - Extension ID:
burdenoff.semanticfed-code-extension - Repository: github.com/algoshred/semanticfed-code-extension
Features
- Activity-bar views for Semantic Models, Data Sources, Queries, Query Runs, Connectors, and Dashboard.
- Full CRUD lifecycle via guided input pickers: create, update, publish, archive, and delete.
- Webview panels — rich detail views for Models, Data Sources, Queries, Connectors, and a federation Dashboard.
- Status bar — published models, connected data sources, published queries, and active connectors at a glance.
- Entity dimensions & metrics surfaced from a model's entity rows.
- Open in Web App deep-links for every top-level entity.
- Output-channel Analytics Overview and a copy/export-friendly log buffer.
Authentication
SemanticFed uses the Burdenoff OAuth 2.0 device-code flow (works on local, Remote-SSH, Codespaces, and WSL). Tokens are stored in VS Code SecretStorage.
- Run SemanticFed: Login (or click Sign In in the Semantic Models view).
- Enter the displayed code at the verification URL.
- Pick a workspace. The extension issues a workspace-scoped token and scopes all data requests to it.
The VS Code OAuth client id is burdenoff_vscode_semanticfed.
Environment selection
The extension targets production endpoints by default. To switch environments, set the BURDENOFF_ENV environment variable before starting VS Code:
BURDENOFF_ENV | Workspace gateway | Global gateway | Web app |
|---|---|---|---|
prod (default) | https://graphqlworkspaces.burdenoff.com/workspaces/graphql | https://graphql.burdenoff.com/global/graphql | https://app.semanticfed.com |
alpha | https://alphagraphqlworkspaces.burdenoff.com/workspaces/graphql | https://alphagraphql.burdenoff.com/global/graphql | https://alphaapp.semanticfed.com |
local | http://127.0.0.1:4003/workspaces/graphql | http://127.0.0.1:4000/global/graphql | http://localhost:5173 |
VS Code settings overrides
Advanced users can override individual endpoints via VS Code settings:
| Setting | Purpose |
|---|---|
semanticfed.workspaceEndpoint | Workspace gateway GraphQL endpoint override |
semanticfed.globalEndpoint | Global gateway GraphQL endpoint override |
semanticfed.oidcIssuer | OIDC issuer URL override |
semanticfed.clientId | OAuth 2.0 client id override |
semanticfed.workspaceId | Set automatically after login |
Development
git clone https://github.com/algoshred/semanticfed-code-extension.git
cd semanticfed-code-extension
bun install
bun run lint # eslint, zero warnings
bun run typecheck # tsc --noEmit
bun run compile # tsc -> out/ (test harness)
bun run build # webpack (extension host + webview UI)
bun run smoke:build # verify build artifacts exist
bun run compile:test
bun run test # @vscode/test-electron (needs a display / xvfb)
bun run package # vsce package -> .vsix
bun run sanity # all of the above
Running against local backends
# Start the Burdenoff dev stack first, then:
BURDENOFF_ENV=local code .
Testing
- Unit tests for backend API calls are in
test/suite/and use mockedaxiosrequests. - Extension-host smoke tests launch a real VS Code instance via
@vscode/test-electron. - On headless Linux, set
SEMANTICFED_FORCE_EXTENSION_TESTS=trueand run underxvfb-run.
Release
Tag pushes (v*) build + test + package a VSIX and attach it to a GitHub Release — they never auto-publish. Marketplace / OpenVSX publishing is a deliberate, human-gated workflow_dispatch.
License
Proprietary — Burdenoff Consultancy Services Pvt. Ltd. (packaged manifest declares MIT for marketplace tooling compatibility).