You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+90-15Lines changed: 90 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,9 +7,11 @@ A terminal UI application for managing your local development environment - hot
7
7
## Features
8
8
9
9
-**Unified Process Management** - Start, stop, and restart multiple services from a single TUI
10
+
-**Service Groups** - Organize services into collapsible groups for better organization
10
11
-**Dependency Ordering** - Services start in the correct order based on dependencies
11
12
-**Health Checks** - Wait for services to be healthy before starting dependents
12
-
-**Live Log Streaming** - View logs from all services or focus on one
13
+
-**Live Log Streaming** - View logs from all services or focus on one with scrollback
14
+
-**Hot Config Reload** - Update your config without restarting DevProc
13
15
-**Keyboard-Driven** - Fast navigation with vim-style keybindings
14
16
15
17
## Installation
@@ -47,6 +49,14 @@ Download the latest binary from [GitHub Releases](https://github.com/captjt/devp
47
49
```yaml
48
50
name: my-project
49
51
52
+
# Optional: organize services into groups
53
+
groups:
54
+
backend:
55
+
- api
56
+
- worker
57
+
frontend:
58
+
- web
59
+
50
60
services:
51
61
api:
52
62
cmd: go run ./cmd/api
@@ -89,6 +99,17 @@ env:
89
99
# Load from .env file
90
100
dotenv: .env.local
91
101
102
+
# Organize services into groups (optional)
103
+
groups:
104
+
infrastructure:
105
+
- postgres
106
+
- redis
107
+
backend:
108
+
- api
109
+
- worker
110
+
frontend:
111
+
- web
112
+
92
113
services:
93
114
postgres:
94
115
cmd: docker run --rm -p 5432:5432 -e POSTGRES_PASSWORD=dev postgres:16
@@ -177,22 +198,62 @@ healthcheck:
177
198
retries: 30
178
199
```
179
200
201
+
### Service Groups
202
+
203
+
Groups let you organize related services together in the UI. Services in a group are displayed under a collapsible header showing the group name and running count.
204
+
205
+
```yaml
206
+
groups:
207
+
backend:
208
+
- api
209
+
- worker
210
+
frontend:
211
+
- web
212
+
- storybook
213
+
```
214
+
215
+
- Groups appear in the order they're defined in the config
216
+
- Services not in any group appear at the bottom
217
+
- Press `Space` to collapse/expand a group when a service in that group is selected
218
+
180
219
## Keyboard Shortcuts
181
220
182
-
| Key | Action |
183
-
| -------------- | --------------------------- |
184
-
| `↑/↓` or `j/k` | Navigate services |
185
-
| `s` | Start selected service |
186
-
| `x` | Stop selected service |
187
-
| `r` | Restart selected service |
188
-
| `a` | Start all services |
189
-
| `X` (shift) | Stop all services |
190
-
| `R` (shift) | Restart all services |
191
-
| `Tab` | Toggle single/all logs view |
192
-
| `c` | Clear logs |
193
-
| `f` | Toggle follow mode |
194
-
| `?` | Show help |
195
-
| `q` | Quit (stops all services) |
221
+
### Services
222
+
223
+
| Key | Action |
224
+
| -------------- | ------------------------ |
225
+
| `↑/↓` or `j/k` | Navigate services |
226
+
| `s` | Start selected service |
227
+
| `x` | Stop selected service |
228
+
| `r` | Restart selected service |
229
+
| `a` | Start all services |
230
+
| `X` (shift) | Stop all services |
231
+
| `R` (shift) | Restart all services |
232
+
| `Space` | Toggle group collapsed |
233
+
234
+
### Logs
235
+
236
+
| Key | Action |
237
+
| --------------- | --------------------------- |
238
+
| `Tab` | Toggle single/all logs view |
239
+
| `c` | Clear logs |
240
+
| `f` | Toggle follow mode |
241
+
| `g` / `G` | Scroll to top / bottom |
242
+
| `PgUp` / `PgDn` | Page up / down |
243
+
| `Ctrl+u/d` | Half page up / down |
244
+
245
+
### Config
246
+
247
+
| Key | Action |
248
+
| -------- | ----------------------- |
249
+
| `Ctrl+L` | Reload config from disk |
250
+
251
+
### General
252
+
253
+
| Key | Action |
254
+
| --- | ------------------------- |
255
+
| `?` | Show help |
256
+
| `q` | Quit (stops all services) |
196
257
197
258
## CLI Options
198
259
@@ -207,10 +268,24 @@ Commands:
207
268
208
269
Options:
209
270
-c, --config Path to config file (default: devproc.yaml)
271
+
-w, --watch Watch config file and auto-reload on changes
210
272
-h, --help Show help
211
273
-v, --version Show version
212
274
```
213
275
276
+
### Config Reload
277
+
278
+
DevProc supports hot-reloading your configuration without restarting:
279
+
280
+
- **Manual reload**: Press `Ctrl+L` to reload the config file
281
+
- **Auto reload**: Run with `-w` flag to watch for file changes
282
+
283
+
When config is reloaded:
284
+
285
+
- New services are added (in stopped state)
286
+
- Removed services are stopped and removed
287
+
- Modified services are restarted with the new configuration
0 commit comments