@youtyan/code-viewer 0.6.10 → 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/README.md +38 -13
- package/dist/code-viewer.js +2889 -581
- package/package.json +8 -2
- package/web/app.js +2175 -835
- package/web/style.css +244 -0
- package/web/vendor/THIRD_PARTY_NOTICES.txt +1181 -83
package/README.md
CHANGED
|
@@ -32,8 +32,9 @@ Requires Node.js 20 or newer when installed from npm. Development uses
|
|
|
32
32
|
- Switch the viewer UI between English and Japanese from Viewer Settings —
|
|
33
33
|
the language toggle live-updates every screen including the datastore
|
|
34
34
|
viewer.
|
|
35
|
-
- Browse SQLite, PostgreSQL, MySQL, Redis, Elasticsearch, and
|
|
36
|
-
object storage (MinIO, LocalStack) with a built-in datastore
|
|
35
|
+
- Browse SQLite, PostgreSQL, MySQL, Redis, Elasticsearch, DynamoDB, and
|
|
36
|
+
S3-compatible object storage (MinIO, LocalStack) with a built-in datastore
|
|
37
|
+
viewer.
|
|
37
38
|
Local Supabase CLI (`supabase start`) Postgres projects are auto-discovered
|
|
38
39
|
too, without needing a `docker-compose.yml`.
|
|
39
40
|
- Read the built-in Help page for getting started, the `.code-viewer/`
|
|
@@ -198,6 +199,7 @@ root:
|
|
|
198
199
|
- `annotations.json` — AI Code Annotations.
|
|
199
200
|
- `query-history.json` — datastore query history.
|
|
200
201
|
- `db-snapshots.sqlite` — datastore snapshots and diff blobs.
|
|
202
|
+
- `datastore-connections.json` — saved non-secret datastore connection settings.
|
|
201
203
|
|
|
202
204
|
The `.code-viewer` directory is tool-internal: it never shows up in the file
|
|
203
205
|
tree, searches, or diffs. Add it to `.gitignore` if you do not want to share
|
|
@@ -210,13 +212,14 @@ browser-based viewer for exploring their contents.
|
|
|
210
212
|
|
|
211
213
|
**SQLite** files (`.db`, `.sqlite`, `.sqlite3`, `.s3db`) are detected
|
|
212
214
|
automatically by scanning the repository tree. **PostgreSQL**, **MySQL**,
|
|
213
|
-
**Redis**, **Elasticsearch**, **
|
|
214
|
-
detected from any `docker-compose.yml`,
|
|
215
|
-
or `compose.yaml` found by the same
|
|
216
|
-
|
|
217
|
-
brings up every DB defined under that
|
|
218
|
-
`node_modules/` are skipped, and discovery
|
|
219
|
-
a few dozen services per scan to keep
|
|
215
|
+
**Redis**, **Elasticsearch**, **DynamoDB on LocalStack**, **MinIO**, and
|
|
216
|
+
**LocalStack S3** services are detected from any `docker-compose.yml`,
|
|
217
|
+
`docker-compose.yaml`, `compose.yml`, or `compose.yaml` found by the same
|
|
218
|
+
recursive scan — both the repository root and subdirectories are considered,
|
|
219
|
+
so a single `code-viewer --cwd <root>` brings up every DB defined under that
|
|
220
|
+
root. `.git/`, `.code-viewer/`, and `node_modules/` are skipped, and discovery
|
|
221
|
+
is capped at a few-level depth and a few dozen services per scan to keep
|
|
222
|
+
startup cheap.
|
|
220
223
|
|
|
221
224
|
Services whose names collide across subdirectories are kept distinct via
|
|
222
225
|
`docker:<service>@<relDir>` ids (cwd-direct compose files keep the historical
|
|
@@ -243,6 +246,11 @@ small allowlist of `_search` / `_count` / `_msearch` / `_explain` /
|
|
|
243
246
|
concurrency via `_seq_no` / `_primary_term`), create new documents, and delete
|
|
244
247
|
existing ones. Snapshots and diffs over `_search` iteration are supported.
|
|
245
248
|
|
|
249
|
+
**DynamoDB** support: detect LocalStack services with DynamoDB enabled, list
|
|
250
|
+
tables across paginated responses, inspect key schemas, scan or query items,
|
|
251
|
+
page with `LastEvaluatedKey`, and open an item detail view with a copyable key.
|
|
252
|
+
The explorer is read-only.
|
|
253
|
+
|
|
246
254
|
**S3-compatible object storage** (MinIO, LocalStack): browse
|
|
247
255
|
buckets as a folder tree, search by prefix or filename, sort scanned objects by
|
|
248
256
|
update time, and preview images, video, audio, PDFs, Markdown, HTML, and text
|
|
@@ -266,6 +274,22 @@ constraint violation.
|
|
|
266
274
|
|
|
267
275
|
Open Datastores in the global navigation to access:
|
|
268
276
|
|
|
277
|
+
- **Saved connections** — use the `+` action beside the datastore selector to
|
|
278
|
+
add PostgreSQL, MySQL, Redis, Elasticsearch, S3-compatible, or DynamoDB
|
|
279
|
+
endpoints that are not present in the repository's local discovery files.
|
|
280
|
+
Required fields are marked in the connection dialog, and **Test connection**
|
|
281
|
+
verifies the current values before saving. Saved connections can be edited
|
|
282
|
+
or deleted from the adjacent actions.
|
|
283
|
+
PostgreSQL, MySQL, and Redis use Node.js drivers installed automatically with
|
|
284
|
+
this package, while Elasticsearch, S3, and DynamoDB use built-in HTTP
|
|
285
|
+
clients. No database CLI or `curl` installation is required for saved
|
|
286
|
+
connections.
|
|
287
|
+
Non-secret settings are stored in `.code-viewer/datastore-connections.json`.
|
|
288
|
+
User names, access key IDs, passwords, secret keys, and session tokens remain
|
|
289
|
+
in server memory only and are never written to that file or returned by
|
|
290
|
+
list/edit responses, so they must be entered again after restarting
|
|
291
|
+
code-viewer.
|
|
292
|
+
|
|
269
293
|
- **Multi-DB tabs** — open multiple databases side by side, with their own
|
|
270
294
|
sidebar, panes, and history. `+` adds an empty tab; `×` or middle-click
|
|
271
295
|
closes one (the last tab resets to empty instead of vanishing). Tabs can be
|
|
@@ -311,10 +335,11 @@ Open Datastores in the global navigation to access:
|
|
|
311
335
|
snapshots to see inserted, updated, and deleted rows with full before/after
|
|
312
336
|
values.
|
|
313
337
|
- **Datastore explorers** — first-class sidebars for Redis (DB / SCAN),
|
|
314
|
-
Elasticsearch (indices / mappings / docs),
|
|
315
|
-
badges) so the same Multi-DB tab UI works for
|
|
316
|
-
|
|
317
|
-
|
|
338
|
+
Elasticsearch (indices / mappings / docs), DynamoDB (tables / scan / query),
|
|
339
|
+
and S3 (folder tree, kind badges) so the same Multi-DB tab UI works for
|
|
340
|
+
non-SQL stores too. Redis, Elasticsearch, and S3 support editing or creation
|
|
341
|
+
through in-line panes and confirmation dialogs; DynamoDB browsing is
|
|
342
|
+
read-only.
|
|
318
343
|
|
|
319
344
|
### CLI
|
|
320
345
|
|