https://github.com/thechandanbhagat/overture
Orchestrate multiple app processes from a VS Code sidebar terminals, profiles, logs, and auto-discovery.
https://github.com/thechandanbhagat/overture
dev-tools developer-tools extension process-manager productivity vscode
Last synced: about 1 month ago
JSON representation
Orchestrate multiple app processes from a VS Code sidebar terminals, profiles, logs, and auto-discovery.
- Host: GitHub
- URL: https://github.com/thechandanbhagat/overture
- Owner: thechandanbhagat
- License: mit
- Created: 2026-04-16T05:52:01.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-04-17T00:42:37.000Z (about 2 months ago)
- Last Synced: 2026-04-30T13:34:58.241Z (about 1 month ago)
- Topics: dev-tools, developer-tools, extension, process-manager, productivity, vscode
- Language: TypeScript
- Homepage:
- Size: 109 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Overture
Run and manage multiple app processes from a single VS Code sidebar panel — with per-app terminals, live logs, and automatic project detection.
---
## Features
- **Sidebar panel** — view all your apps at a glance with live status indicators
- **Per-app terminals** — each process runs in its own VS Code terminal tab with full color and interactivity
- **Log files** — output is simultaneously written to `.overture/logs/-YYYY-MM-DD.log` (ANSI stripped, timestamped)
- **Auto-scan** — detects all Node.js projects in your workspace and lists their npm scripts
- **Enable / Disable** — toggle apps on or off without removing them from config
- **Log retention** — old logs are auto-cleaned after a configurable number of days (default: 7)
---
## Installation
Install from the `.vsix` file:
```
code --install-extension overture-1.0.3.vsix
```
Or via VS Code: **Extensions → ··· → Install from VSIX**
---
## Quick Start
1. Open your project folder in VS Code
2. Click the **Overture** icon in the activity bar (left sidebar)
3. Click **Create Config** — this immediately opens a scanner to detect your projects
4. Select the scripts you want to run and confirm
5. Click **Start All** (▶▶ icon) to launch everything
---
## Config File
The extension reads `.overture/config.json` from your workspace root.
```json
{
"retentionDays": 7,
"apps": [
{
"name": "frontend",
"path": "./packages/frontend",
"command": "npm run dev",
"enabled": true
},
{
"name": "backend",
"path": "./packages/backend",
"command": "npm run dev",
"enabled": true
},
{
"name": "worker",
"path": "./packages/worker",
"command": "npm run dev",
"enabled": false
}
]
}
```
| Field | Type | Description |
|----------------|---------|--------------------------------------------------|
| `retentionDays`| number | Days to keep log files (default: 7) |
| `name` | string | Display name shown in the sidebar |
| `path` | string | Path to the project folder, relative to workspace root |
| `command` | string | Command to run (e.g. `npm run dev`, `yarn start`)|
| `enabled` | boolean | Whether this app starts with Start All |
The file is watched — changes take effect immediately without reloading VS Code.
---
## Sidebar Panel
Click the **Overture** icon in the activity bar to open the panel.
### Status indicators
| Icon | Meaning |
|------|---------|
| Green filled circle | Running |
| Grey outline circle | Stopped |
| Slash circle | Disabled |
| Red filled circle | Exited with error |
### Toolbar buttons
| Button | Action |
|--------|--------|
| ▶▶ | Start all enabled apps |
| ⏹ | Stop all running apps |
| ↺ | Refresh / reload config |
| ⚙ | Open config file |
| 🔍 | Scan workspace for Node.js projects |
### Per-app inline buttons
Right-click any app or use the inline icons:
| Button | Condition | Action |
|--------|-----------|--------|
| ▶ | Stopped | Start this app |
| ⏹ | Running | Stop this app |
| ↺ | Running | Restart this app |
| ⊟ | Any | Show terminal output |
| ⊘ | Any | Toggle enable / disable |
---
## Scanning for Projects
Click the **magnifying glass** icon or run `Overture: Scan Workspace for Node.js Projects` from the Command Palette (`Ctrl+Shift+P`).
The scanner:
- Finds every `package.json` in the workspace (skips `node_modules`, `dist`, `build`, `out`)
- Lists all scripts grouped by project
- Pre-selects `dev`, `start`, `serve`, `preview`, `develop` scripts
- Marks already-configured scripts so you don't add duplicates
After confirming your selection, scripts are appended to `.overture/config.json`. You can scan multiple times safely.
---
## Terminals & Logs
Each app runs in its own VS Code terminal tab named `▶ `.
- Full ANSI color support — npm spinners, colors, etc. render correctly
- The terminal is **interactive** — you can type into it (stdin is forwarded)
- Closing the terminal tab stops the process
Log files are written to `.overture/logs/`:
- One file per app per day: `frontend-2026-04-16.log`
- ANSI codes stripped, each line prefixed with `[HH:MM:SS]`
- Files older than `retentionDays` are deleted automatically on next start
---
## Commands (Command Palette)
All commands are available via `Ctrl+Shift+P` → type **Overture**:
| Command | Description |
|---------|-------------|
| Overture: Start All Enabled Apps | Start all enabled apps |
| Overture: Stop All Apps | Stop all running apps |
| Overture: Scan Workspace for Node.js Projects | Auto-detect and add projects |
| Overture: Refresh | Reload config and sync state |
| Overture: Open Config | Open `.overture/config.json` |
| Overture: Create Config | Create an empty config and open the scanner |
---
## Status Bar
The bottom-left status bar shows the running count:
- `▶ Overture` — nothing running, click to start all
- `● 2/3 running` — 2 of 3 enabled apps are running, click to start remaining