Build on Vadyl

An IDE in your browser. Same APIs as the CLI.

The coding workspace is not the source of truth. It reads and writes through the canonical SourceAssetController, ConnectionController, PublicationController, BuildController, RuntimeUnitController — the same endpoints any third-party tool consumes. Monaco editor with the MonacoContractProjectionBridge: every contract projection stamp advance re-injects extraLibs so types stay correct as your model evolves. Language-agnostic by construction.

The panes

Everything wired to the same canonical state.

No workspace-only endpoints. No privileged shortcut. Every action you take in the browser flows through the same canonical APIs your CLI and SDK clients use.

Scope-aware file tree

Folders and files projected from ProjectSourceFolder / ProjectSourceFile entities. Drag, rename, branch — every action is a canonical mutation.

Monaco contract-projection bridge

extraLibs re-injected on contract-projection stamp advance. Edit an entity in another tab — your handler's autocomplete updates without a reload.

Execution surface inspector

Every module classified as CoreHandler / DurableWorkflow / EdgeHandler / ScheduledJob / WebhookHandler / EventConsumer / ManagementHandler. The inspector shows what each can call.

Runtime unit dialog

Configure handler bindings, schedule triggers, webhook routes, event subscriptions — all backed by the canonical RuntimeUnitController. Same shape your CLI sees.

Publication lineage pane

See the chain: source commit → contract version → publication version. Pin a workflow to a specific publication. Roll back across the lineage.

Observability link pane

Per-handler runs, per-workflow journals, per-event deliveries. Click into the audit trail. Click further into the explainer for the decision reasoning.

Governed connections pane

Create / configure / branch governed connections inline. Test connectivity from the workspace; the test runs through the canonical bridge with the same governance you'd get in production.

Bindings inspector

Capability grants, federation contracts, surface installations, environment overrides — all visible per-project. Edit through the same canonical service the platform admin would use.

Language-agnostic

Authoring-language registry resolves at runtime. TypeScript first; Python, Go, Rust, C# as peer projections from the same product model and canonical backbone.

Peer consumer
Of canonical APIs

Same as CLI, same as third-party

0
Workspace-only endpoints

Anti-pattern #56 codified

Hot reload
On contract changes

extraLibs re-inject on stamp advance

Language-agnostic
By construction

Authoring-language registry resolves

Edit, branch, deploy — in your browser.

The same canonical APIs the CLI uses. The same governance the platform enforces. No second authority. Just an IDE that respects the system underneath.