devsurface 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/README.md +124 -16
- package/dist/cli/index.js +1256 -259
- package/dist/cli/index.js.map +1 -1
- package/package.json +22 -3
- package/src/web/dist/assets/index-Bj8suDpq.css +1 -0
- package/src/web/dist/assets/index-DOLQwdCe.js +10 -0
- package/src/web/dist/index.html +2 -2
- package/src/web/dist/assets/index-7njY8n4D.js +0 -10
- package/src/web/dist/assets/index-DvunFIw4.css +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.0
|
|
4
|
+
|
|
5
|
+
- Added framework presets for Next.js, Vite, Express, Fastify, NestJS, Remix, and Prisma.
|
|
6
|
+
- Added detected preset commands and ports to the dashboard and command API.
|
|
7
|
+
- Added Python project detection for `requirements.txt`, `pyproject.toml`, and `Pipfile`, including FastAPI/Uvicorn, Flask, and Django commands.
|
|
8
|
+
- Added Go project detection from `go.mod`, with run, build, and test commands.
|
|
9
|
+
- Added Java project detection from Maven and Gradle build files, with build and test commands.
|
|
10
|
+
- Updated doctor checks so detected Python, Go, and Java projects are not treated as broken Node.js projects.
|
|
11
|
+
|
|
12
|
+
## 0.4.0
|
|
13
|
+
|
|
14
|
+
- Added multi-workspace Hub mode: one DevSurface instance serves multiple project
|
|
15
|
+
directories. Run `npx devsurface` in any project to attach it to a running hub.
|
|
16
|
+
- Added `devsurface serve` command for running the hub as a persistent background
|
|
17
|
+
server, Docker container, or k3s pod.
|
|
18
|
+
- Added `devsurface workspace add|list|remove` commands for managing registered
|
|
19
|
+
workspaces from the CLI.
|
|
20
|
+
- Added workspace switcher and Hub overview page in the dashboard for comparing
|
|
21
|
+
projects at a glance.
|
|
22
|
+
- Added workspace-scoped API routes under `/api/workspaces/:id/*` with backward-
|
|
23
|
+
compatible aliases for single-project setups.
|
|
24
|
+
- Added workspace-scoped WebSocket connections via `?workspace=<id>` query parameter.
|
|
25
|
+
- Added Dockerfile, docker-compose.hub.yml, and deploy/k3s/ Kubernetes manifests
|
|
26
|
+
for containerized and local-cluster deployments.
|
|
27
|
+
- Added `DEVSURFACE_HOST`, `DEVSURFACE_CONTAINER`, `DEVSURFACE_DATA_DIR`,
|
|
28
|
+
`DEVSURFACE_WORKSPACES`, and `DEVSURFACE_WORKSPACE_ROOTS` environment variables
|
|
29
|
+
for container and workspace-root configuration.
|
|
30
|
+
- Kept per-project `devsurface.config.json` unchanged; existing single-project
|
|
31
|
+
workflows auto-register on first run.
|
|
32
|
+
- Added workspace-root configuration for deployments that should only register
|
|
33
|
+
projects from mounted directories.
|
|
34
|
+
|
|
3
35
|
## 0.3.0
|
|
4
36
|
|
|
5
37
|
- Added the reusable `mrfandu1/devsurface@v0` GitHub Action.
|
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
<h1>DevSurface</h1>
|
|
8
8
|
|
|
9
|
-
<p><strong>
|
|
9
|
+
<p><strong>Local developer dashboard for Node.js repositories.</strong></p>
|
|
10
10
|
|
|
11
11
|
<p>
|
|
12
12
|
<a href="#quick-start">Quick Start</a>
|
|
@@ -22,19 +22,30 @@
|
|
|
22
22
|
<a href="https://github.com/mrfandu1/devsurface">
|
|
23
23
|
<img alt="DevSurface ready" src="docs/devsurface-badge.svg">
|
|
24
24
|
</a>
|
|
25
|
+
<a href="https://www.npmjs.com/package/devsurface">
|
|
26
|
+
<img alt="npm version" src="https://img.shields.io/npm/v/devsurface.svg">
|
|
27
|
+
</a>
|
|
28
|
+
<a href="https://www.npmjs.com/package/devsurface">
|
|
29
|
+
<img alt="npm downloads" src="https://img.shields.io/npm/dm/devsurface.svg">
|
|
30
|
+
</a>
|
|
31
|
+
<a href="https://github.com/mrfandu1/devsurface/stargazers">
|
|
32
|
+
<img alt="GitHub stars" src="https://img.shields.io/github/stars/mrfandu1/devsurface?style=flat">
|
|
33
|
+
</a>
|
|
25
34
|
<a href="LICENSE">
|
|
26
|
-
<img alt="License: MIT" src="https://img.shields.io/
|
|
35
|
+
<img alt="License: MIT" src="https://img.shields.io/github/license/mrfandu1/devsurface">
|
|
27
36
|
</a>
|
|
28
37
|
<img alt="Built with TypeScript" src="https://img.shields.io/badge/Built%20with-TypeScript-3178c6">
|
|
29
38
|
</p>
|
|
30
39
|
|
|
31
40
|
</div>
|
|
32
41
|
|
|
33
|
-
DevSurface
|
|
34
|
-
|
|
35
|
-
|
|
42
|
+
DevSurface is a zero-config CLI and local browser dashboard for understanding,
|
|
43
|
+
configuring, and running unfamiliar repositories. It detects Node.js package scripts,
|
|
44
|
+
Python, Go, and Java project commands, environment files, occupied ports, Docker
|
|
45
|
+
Compose services, frameworks, live command logs, repo health checks, and
|
|
46
|
+
multi-workspace projects.
|
|
36
47
|
|
|
37
|
-
No config file is required.
|
|
48
|
+
No global install, account, cloud service, or config file is required.
|
|
38
49
|
|
|
39
50
|
```bash
|
|
40
51
|
npx devsurface
|
|
@@ -57,11 +68,43 @@ new contributor can see what is missing before guessing in the terminal.
|
|
|
57
68
|
|
|
58
69
|
DevSurface is local-first:
|
|
59
70
|
|
|
60
|
-
-
|
|
71
|
+
- Local runs bind to `127.0.0.1`.
|
|
72
|
+
- Docker and k3s runs bind inside the container and are meant to be exposed with
|
|
73
|
+
local port mappings or `kubectl port-forward`.
|
|
61
74
|
- No accounts, cloud sync, telemetry, or analytics.
|
|
62
75
|
- `.env` values are never displayed.
|
|
63
76
|
- Commands are shown before they run.
|
|
64
77
|
|
|
78
|
+
## Use Cases
|
|
79
|
+
|
|
80
|
+
DevSurface is useful when you need to:
|
|
81
|
+
|
|
82
|
+
- Onboard contributors to an unfamiliar Node.js repository.
|
|
83
|
+
- Explore available npm, pnpm, Yarn, or Bun scripts.
|
|
84
|
+
- Check missing environment variables before starting a project.
|
|
85
|
+
- Detect local port conflicts.
|
|
86
|
+
- View and control Docker Compose services.
|
|
87
|
+
- Run development commands from a browser dashboard.
|
|
88
|
+
- Check repository onboarding health in GitHub Actions.
|
|
89
|
+
- Manage multiple local project workspaces.
|
|
90
|
+
|
|
91
|
+
## Supported Frameworks and Tools
|
|
92
|
+
|
|
93
|
+
DevSurface detects projects using:
|
|
94
|
+
|
|
95
|
+
- Next.js
|
|
96
|
+
- Vite
|
|
97
|
+
- Express
|
|
98
|
+
- Fastify
|
|
99
|
+
- NestJS
|
|
100
|
+
- Remix
|
|
101
|
+
- Prisma
|
|
102
|
+
- Python: FastAPI/Uvicorn, Flask, Django
|
|
103
|
+
- Go modules
|
|
104
|
+
- Java: Maven and Gradle
|
|
105
|
+
- Docker Compose
|
|
106
|
+
- npm, pnpm, Yarn, and Bun
|
|
107
|
+
|
|
65
108
|
## How It Compares
|
|
66
109
|
|
|
67
110
|
| Tool | What it does | Where DevSurface is different |
|
|
@@ -109,13 +152,52 @@ Run DevSurface without installing it globally:
|
|
|
109
152
|
| npm | `npx devsurface` |
|
|
110
153
|
| Bun | `bunx devsurface` |
|
|
111
154
|
|
|
112
|
-
| Command
|
|
113
|
-
|
|
|
114
|
-
| `devsurface`
|
|
115
|
-
| `devsurface scan`
|
|
116
|
-
| `devsurface doctor`
|
|
117
|
-
| `devsurface init`
|
|
118
|
-
| `devsurface run <script>`
|
|
155
|
+
| Command | Description |
|
|
156
|
+
| ---------------------------------- | -------------------------------------------------------------------- |
|
|
157
|
+
| `devsurface` | Scan the current project, start the dashboard, and open the browser. |
|
|
158
|
+
| `devsurface scan` | Print detected project information to the terminal. |
|
|
159
|
+
| `devsurface doctor` | Print setup and repo health warnings. |
|
|
160
|
+
| `devsurface init` | Create a starter `devsurface.config.json`. |
|
|
161
|
+
| `devsurface run <script>` | Run a package script and stream output. |
|
|
162
|
+
| `devsurface serve` | Start the multi-workspace hub server. |
|
|
163
|
+
| `devsurface workspace add [path]` | Register a project directory with the local hub. |
|
|
164
|
+
| `devsurface workspace list` | List registered hub workspaces. |
|
|
165
|
+
| `devsurface workspace remove <id>` | Remove a workspace from the hub registry. |
|
|
166
|
+
|
|
167
|
+
## Multi-Workspace Hub
|
|
168
|
+
|
|
169
|
+
DevSurface now runs as a local hub. One server can serve several project
|
|
170
|
+
directories, each with isolated process state, Docker controls, logs, and scanner
|
|
171
|
+
results.
|
|
172
|
+
|
|
173
|
+
Start or attach from any project:
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
npx devsurface
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Run a persistent hub:
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
npx devsurface serve --no-open
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Register workspaces manually:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
npx devsurface workspace add /path/to/project-a
|
|
189
|
+
npx devsurface workspace add /path/to/project-b
|
|
190
|
+
npx devsurface workspace list
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Container and k3s deployments are included for local-cluster use:
|
|
194
|
+
|
|
195
|
+
- `Dockerfile`
|
|
196
|
+
- `docker-compose.hub.yml`
|
|
197
|
+
- `deploy/k3s/`
|
|
198
|
+
|
|
199
|
+
Container deployments bind inside the container. Keep host port mappings local,
|
|
200
|
+
for example `127.0.0.1:4567:4567`, or use `kubectl port-forward` for k3s.
|
|
119
201
|
|
|
120
202
|
## GitHub Action
|
|
121
203
|
|
|
@@ -244,8 +326,9 @@ works for the repo:
|
|
|
244
326
|
|
|
245
327
|
DevSurface is designed for local development.
|
|
246
328
|
|
|
247
|
-
-
|
|
248
|
-
-
|
|
329
|
+
- Local dashboard servers bind to loopback hosts.
|
|
330
|
+
- Container deployments use `DEVSURFACE_CONTAINER=true`.
|
|
331
|
+
- Workspace registration can be limited with `DEVSURFACE_WORKSPACE_ROOTS`.
|
|
249
332
|
- `.env` values are never returned by scanners, API routes, CLI output, or UI panels.
|
|
250
333
|
- Dashboard command runs show the exact command string first.
|
|
251
334
|
- Docker service start and stop actions show the exact Compose command before running.
|
|
@@ -253,6 +336,31 @@ DevSurface is designed for local development.
|
|
|
253
336
|
database drops, and `git clean -fd`, are visibly marked before execution.
|
|
254
337
|
- Child processes started by DevSurface are cleaned up when the dashboard exits.
|
|
255
338
|
|
|
339
|
+
## FAQ
|
|
340
|
+
|
|
341
|
+
### What is DevSurface?
|
|
342
|
+
|
|
343
|
+
DevSurface is a local developer dashboard for understanding, configuring, and running
|
|
344
|
+
Node.js repositories.
|
|
345
|
+
|
|
346
|
+
### Can DevSurface run npm scripts from a browser?
|
|
347
|
+
|
|
348
|
+
Yes. DevSurface detects `package.json` scripts and lets you run them while viewing
|
|
349
|
+
live logs and exit status.
|
|
350
|
+
|
|
351
|
+
### Does DevSurface display .env values?
|
|
352
|
+
|
|
353
|
+
No. DevSurface checks whether environment keys exist, but never displays their values.
|
|
354
|
+
|
|
355
|
+
### Does DevSurface require configuration?
|
|
356
|
+
|
|
357
|
+
No. It works automatically, with an optional `devsurface.config.json` file for richer
|
|
358
|
+
commands, groups, ports, env paths, and docs links.
|
|
359
|
+
|
|
360
|
+
### Does DevSurface support Docker Compose?
|
|
361
|
+
|
|
362
|
+
Yes. It detects Compose services and provides service status, controls, and recent logs.
|
|
363
|
+
|
|
256
364
|
## Examples
|
|
257
365
|
|
|
258
366
|
This repository includes two sample projects:
|