Official VS Code extension for Streamline streaming platform.
- Topic Browser: View and manage topics directly in VS Code
- Message Preview: Browse messages with JSON formatting
- Consumer Groups: Monitor consumer group status and lag
- Quick Produce: Send test messages without leaving your editor
- Schema Validation: Validate messages against registered schemas
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Streamline"
- Click Install
Or install from the command line:
code --install-extension streamline.streamline-vscode- Open the Streamline view in the Activity Bar
- Click "Connect to Server" or use
Ctrl+Shift+P→ "Streamline: Connect" - Enter your server address (default:
localhost:9092) - Browse topics in the tree view
| Command | Description |
|---|---|
Streamline: Connect |
Connect to a Streamline server |
Streamline: Disconnect |
Disconnect from current server |
Streamline: Create Topic |
Create a new topic |
Streamline: View Messages |
Open message viewer for a topic |
Streamline: Produce Message |
Send a message to a topic |
Streamline: Refresh Topics |
Refresh the topic list |
Streamline: Register Schema |
Register a new schema |
Streamline: View Schema |
View schema details |
Streamline: Check Compatibility |
Check schema compatibility |
Streamline: Set Compatibility Level |
Set subject compatibility level |
Streamline: Delete Subject |
Delete all versions of a subject |
Configure in VS Code settings (settings.json):
{
"streamline.serverAddress": "localhost:9092",
"streamline.httpAddress": "localhost:9094",
"streamline.autoRefresh": true,
"streamline.refreshInterval": 5000,
"streamline.maxMessages": 100,
"streamline.theme": "auto",
"streamline.autoReconnect": true,
"streamline.autoReconnectInterval": 5000,
"streamline.connections": [
{
"name": "local",
"host": "localhost",
"port": 9092,
"httpPort": 9094
},
{
"name": "production",
"host": "streamline.example.com",
"port": 9092,
"httpPort": 9094,
"tls": true,
"tlsCaCert": "/path/to/ca.pem"
}
],
"streamline.defaultConnection": "local"
}Validate messages before producing by setting a JSON Schema:
{
"streamline.produceMessageSchema": {
"type": "object",
"required": ["id", "event"],
"properties": {
"id": { "type": "string" },
"event": { "type": "string" },
"timestamp": { "type": "number" }
}
}
}- Lists all topics with partition count
- Right-click for context menu actions
- Expand topics to see partitions
- Shows all consumer groups
- Displays member count and state
- View lag per partition
- Browse all schema subjects
- View schema versions and definitions
- Check schema compatibility
- Register new schemas
- Manage compatibility levels
- Manage saved connections
- Quick-switch between environments
When viewing messages:
- Navigation: Use arrow keys or scroll
- Search: Press
Ctrl+Fto search within messages - Format: JSON is automatically pretty-printed
- Copy: Right-click to copy message content
- Time Travel: Filter by timestamp range
| Shortcut | Command |
|---|---|
Ctrl+Shift+S |
Connect to Streamline |
Ctrl+Shift+R |
Refresh topics |
Ctrl+Shift+N |
Create new topic |
- VS Code 1.85.0 or later
- Streamline server (HTTP API must be enabled)
- Verify the server is running:
curl http://localhost:9094/health - Check firewall settings
- Ensure HTTP API is enabled on the server
- Click the refresh button
- Check connection status in the status bar
- Verify you have permissions to list topics
Contributions are welcome! Please see the contributing guide.
Apache 2.0