Datamart Fleet
VS Code extension for visualizing and editing Fleet Manager components


Features
Component Editors
| Component |
Capabilities |
| Decision Table |
Full table editing with 40+ functions, operators, row/column operations, sorting, type validation |
| Decision Tree |
Visual IF/Then/Else editor with drag-and-drop, nested blocks, OR conditions |
| Script |
Python editor with syntax highlighting, code assistance, and real-time validation |
| DataSource |
HTTP endpoint configuration with sync/async modes, auth, headers, body editor |
| Webhook |
Webhook configuration with all HTTP methods, auth types, and output schema |
| Custom Type |
Dynamic form editor based on JSON Schema with date pickers, UUID generation |
| Custom Type Definition |
Template editor with JSON Schema designer, UI Schema editor, and live preview |
| Flow |
Interactive flow diagrams with auto-arrange (fan-out aware), data map panel, error handling editor, editable node properties (component, version, variant, global variable with cascading rename), canvas lock toggle to disable all editing |
Common Capabilities
- Config Tab - Edit metadata, description, tags, variables, and JSON schemas
- Real-time Validation - Instant error feedback as you type
- Auto-save - Changes persist automatically to component files
- Theme Integration - Seamless dark/light mode support
- Multi-panel - Open multiple components simultaneously
Installation
From VS Code Marketplace
- Open VS Code
- Go to Extensions (
Cmd+Shift+X / Ctrl+Shift+X)
- Search for "Datamart Fleet"
- Click Install
From VSIX File
code --install-extension dm-vscode-fleet-*.vsix
Getting Started
Opening Components
- Context Menu - Right-click a
.json file in Explorer → "Open in Datamart Fleet"
- Command Palette -
Cmd+Shift+P → "DM Fleet: Open in Datamart Fleet"
- Editor Toolbar - Click the Datamart Fleet icon when viewing a JSON file
- Editor Context - Right-click inside a JSON file → "Open in Datamart Fleet"
Getting Data from Fleet Manager
Option 1: API Response
- Open Fleet Manager in your browser
- Open Chrome DevTools → Network tab
- Navigate to the component you want to edit
- Copy the
getComponentVersion2 API response
Option 2: Fleet CLI
fleet init
This syncs your entire workspace with Fleet Manager components.
Supported Component Types
| Type |
View |
Edit |
| Flow, Express Flow, Screen Flow |
✅ |
✅ Partial (node properties, error handling, data maps) |
| Decision Table |
✅ |
✅ |
| Decision Tree |
✅ |
✅ |
| Script |
✅ |
✅ |
| DataSource |
✅ |
✅ |
| Webhook |
✅ |
✅ |
| Custom Type |
✅ |
✅ |
| Custom Type Definition |
✅ |
✅ |
| Screen, Template, Basic, Composite |
✅ |
Config only |
Keyboard Shortcuts
| Shortcut |
Action |
Cmd/Ctrl + Shift + P |
Open command palette |
Cmd/Ctrl + 0 |
Reset zoom (flow canvas) |
Cmd/Ctrl + + |
Zoom in |
Cmd/Ctrl + - |
Zoom out |
ESC |
Cancel drag operation |
Enter |
Confirm input field |
Settings
Configure via VS Code Settings (Cmd+,) under "Datamart Fleet":
| Setting |
Description |
Default |
dmFleet.autoRefresh |
Auto-reload when files change |
true |
dmFleet.autoRefreshDebounce |
Debounce delay (ms) for auto-refresh |
300 |
dmFleet.maxOpenPanels |
Maximum simultaneous panels |
5 |
dmFleet.panelDisposalMode |
Panel disposal behavior (never / limit) |
limit |
Requirements
Development
Running Tests
# Run all tests
pnpm test
# Run tests in watch mode
pnpm vitest --watch
# Run tests with coverage report
pnpm vitest run --coverage
# Run a specific test file
pnpm vitest run test/suite/components/FlowViewer.test.tsx
Test Coverage
The project maintains comprehensive test coverage with 2,547+ tests covering:
| Area |
Coverage |
| Flow Layout Services |
98% |
| Node Components |
68% |
| Common Components |
55% |
| Hooks & Utilities |
65% |
| Overall |
56%+ |
Support
License
Proprietary - Datamart
| |