devsurface 0.7.1 → 0.8.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 CHANGED
@@ -1,5 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.8.0
4
+
5
+ - Added Project Passport: `devsurface passport` generates a single self-contained
6
+ HTML onboarding report that explains the project in plain English — what it is,
7
+ how to run it step by step with exact commands, every script explained, env key
8
+ names (never values), ports, Docker services, and health warnings. It opens
9
+ offline in any browser and is safe to share.
10
+ - Added `GET /api/workspaces/:id/passport` (and `/api/passport` alias) serving the
11
+ passport from the dashboard, plus a Passport quick action in the overview.
12
+ - Added port owner detection: busy ports now show which process is squatting on
13
+ them ("in use by node.exe (PID 1234)") in the Ports view and inspector, using
14
+ netstat/tasklist on Windows and lsof elsewhere. Lookups are best-effort and
15
+ never block or fail a scan.
16
+ - Added write-only env quick-fill: missing or empty .env keys get a password
17
+ input in the Environment view. Values are written straight to .env
18
+ (created with owner-only permissions when missing) and are never displayed,
19
+ logged, or returned by any API. New `POST /api/workspaces/:id/env/set` route
20
+ behind the standard mutation guard.
21
+ - Added a Ctrl+K / Cmd+K command palette: fuzzy-search views, package scripts
22
+ (with plain-English explanations), quick actions, and workspaces, then run
23
+ the selection from the keyboard.
24
+ - Fixed `devsurface serve -p <port>` (and other subcommand `-p` flags) being
25
+ silently swallowed by the root `--port` option, which made the hub always
26
+ bind the default port 4567.
27
+
3
28
  ## 0.7.1
4
29
 
5
30
  - Added structured `setupGuide` steps in `devsurface.config.json`: each step can be a plain string or an object with `title`, `description`, and a `command` or `script` key that turns it into a one-click action button in the Onboarding tab.
package/README.md CHANGED
@@ -158,12 +158,37 @@ Run DevSurface without installing it globally:
158
158
  | `devsurface scan` | Print detected project information to the terminal. |
159
159
  | `devsurface doctor` | Print setup and repo health warnings. |
160
160
  | `devsurface init` | Create a starter `devsurface.config.json`. |
161
+ | `devsurface passport` | Generate a shareable HTML onboarding report (Project Passport). |
161
162
  | `devsurface run <script>` | Run a package script and stream output. |
162
163
  | `devsurface serve` | Start the multi-workspace hub server. |
163
164
  | `devsurface workspace add [path]` | Register a project directory with the local hub. |
164
165
  | `devsurface workspace list` | List registered hub workspaces. |
165
166
  | `devsurface workspace remove <id>` | Remove a workspace from the hub registry. |
166
167
 
168
+ ## Project Passport
169
+
170
+ Some people who need to run a project will never open a terminal happily: a
171
+ designer checking a prototype, a PM reviewing a feature, a student cloning their
172
+ first repo. Project Passport is for them — and for the developer who would
173
+ otherwise write the same "how to run this" message again and again.
174
+
175
+ ```bash
176
+ npx devsurface passport
177
+ ```
178
+
179
+ This writes `devsurface-passport.html`: a single self-contained page that works
180
+ offline in any browser and explains the project in plain English:
181
+
182
+ - What the project is (framework, languages, services).
183
+ - Step-by-step "get it running" instructions with exact copy-paste commands.
184
+ - Every package script explained in one friendly sentence.
185
+ - Environment keys the project needs (names only — values are never included).
186
+ - Ports, Docker services, and repo health warnings.
187
+
188
+ Share it in chat, email it to a new contributor, or commit it as living
189
+ onboarding docs. The dashboard has a matching **Passport** quick action, and the
190
+ API serves it at `/api/workspaces/:id/passport`.
191
+
167
192
  ## Multi-Workspace Hub
168
193
 
169
194
  DevSurface now runs as a local hub. One server can serve several project
@@ -258,6 +283,11 @@ run package scripts, inspect local ports, require a real `.env`, or contact Dock
258
283
 
259
284
  ## Dashboard
260
285
 
286
+ Press <kbd>Ctrl</kbd>+<kbd>K</kbd> (or <kbd>Cmd</kbd>+<kbd>K</kbd>) anywhere in the
287
+ dashboard to open the command palette: fuzzy-search views, package scripts with
288
+ plain-English explanations, quick actions, and workspaces, and run the selection
289
+ without touching the mouse.
290
+
261
291
  The dashboard includes:
262
292
 
263
293
  - **Project Overview**: project name, framework, package manager, branch, env, README,
@@ -265,8 +295,10 @@ The dashboard includes:
265
295
  - **Quick Actions**: compact direct actions for scripts, terminal, project folder,
266
296
  `package.json`, and dependency install.
267
297
  - **Scripts**: every package script, plus grouped configured commands when present.
268
- - **Environment**: `.env` and `.env.example` status, key presence, and copy-from-example.
269
- - **Ports**: detected ports with availability and conflict warnings.
298
+ - **Environment**: `.env` and `.env.example` status, key presence, copy-from-example,
299
+ and write-only quick-fill for missing keys (values are never displayed).
300
+ - **Ports**: detected ports with availability, conflict warnings, and the name +
301
+ PID of the process occupying a busy port.
270
302
  - **Services**: Docker Compose daemon state, per-service status, start/stop controls,
271
303
  and the latest 200 log lines for each service.
272
304
  - **Logs**: expandable per-command logs with timestamps, streams, and exit state.