Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
565ef18
chore: release v1.0.2
regenrek Sep 13, 2025
58c37bb
chore: update @browser-echo dependencies to version 1.0.2 across all …
regenrek Sep 13, 2025
0e2d908
feat: introduce optional network logging capabilities with fetch, XML…
regenrek Sep 13, 2025
899d828
chore: update pnpm-lock.yaml to sync with 1.0.2 dependency updates
regenrek Sep 13, 2025
671ffb9
feat(networkLogs): optional request/response body capture with trunca…
regenrek Sep 13, 2025
98a5e51
docs: document networkLogs.bodies options and examples across core, V…
regenrek Sep 13, 2025
db9c1de
feat(fileLog): add split option for file logging and update documenta…
regenrek Sep 13, 2025
907d466
fix(vite): correct formatting in network response snippet for better …
regenrek Sep 13, 2025
3fde549
fix(vite): update ellipsis formatting in log truncation for consisten…
regenrek Sep 13, 2025
98ae575
refactor(vite): simplify client module initialization and payload str…
regenrek Sep 13, 2025
0c811a4
feat(vite): add core entry resolution for dynamic import\n\n- Introdu…
regenrek Sep 14, 2025
0a3b9c9
refactor(vite): update virtual module initialization and payload stru…
regenrek Sep 14, 2025
55ff47b
chore: alpha release v1.1.0-alpha.0
regenrek Sep 14, 2025
76db554
chore: update lockfile after 1.1.0-alpha.0 bump
regenrek Sep 14, 2025
0f3029d
chore: update @browser-echo/core dependency to use workspace resoluti…
regenrek Sep 14, 2025
12aecbf
chore: alpha release v1.1.0-alpha.1
regenrek Sep 14, 2025
a16c609
chore: restore workspace:* after alpha.1 and update lockfile
regenrek Sep 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.1.0] - 2025-09-XX

### Added
- **Network Logs (opt-in)**: Capture fetch, XMLHttpRequest, and WebSocket as `[network]` entries alongside console logs. Disabled by default; enable via `networkLogs.enabled: true` (Vite/Next/Nuxt/Core).
- **Tag Filtering**: `get_logs({ tag })` and diagnostics `GET /__client-logs?tag=...` to filter by stream tag (`[browser]`, `[network]`, `[worker]`).
- **Worker Runtime (internal)**: Dev-only worker console capture runtime available in core (not exported publicly by default).
- **MCP File Logging (opt-in)**: Enable ingest-side file logging with `BROWSER_ECHO_FILE_LOG=true` and optional split via `BROWSER_ECHO_SPLIT_LOGS=true`.

### Changed
- Removed protocol from network log text. Format now: `[NETWORK] [METHOD] [URL] [STATUS] [DURATION ms]` and WS events `[WS OPEN/CLOSE/ERROR]`.
- Next/Nuxt handlers now suppress terminal only when `BROWSER_ECHO_MCP_URL` is set.

## [1.0.2] - 2025-09-XX

### Fixed
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ Stream browser `console.*` logs to your dev terminal and optional file logging.
- Colorized terminal output
- Optional file logging (Vite provider only)
- Works great with AI assistants reading your terminal
- Optional network capture (opt‑in): fetch, XMLHttpRequest, WebSocket

## Production

Expand Down
4 changes: 2 additions & 2 deletions example/next-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
"react-dom": "19.1.1"
},
"devDependencies": {
"@browser-echo/mcp": "workspace:*",
"@browser-echo/next": "workspace:*",
"@browser-echo/mcp": "1.0.2",
"@browser-echo/next": "1.0.2",
"@eslint/eslintrc": "^3",
"@tailwindcss/postcss": "^4.1.12",
"@types/node": "^24.3.0",
Expand Down
2 changes: 1 addition & 1 deletion example/nuxt-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,6 @@
},
"packageManager": "pnpm@10.12.1+sha512.f0dda8580f0ee9481c5c79a1d927b9164f2c478e90992ad268bbb2465a736984391d6333d2c327913578b2804af33474ca554ba29c04a8b13060a717675ae3ac",
"devDependencies": {
"@browser-echo/nuxt": "workspace:*"
"@browser-echo/nuxt": "1.0.2"
}
}
2 changes: 1 addition & 1 deletion example/react-vite-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"react-dom": "^19.1.1"
},
"devDependencies": {
"@browser-echo/vite": "workspace:*",
"@browser-echo/vite": "1.0.2",
"@eslint/js": "^9.17.0",
"@types/react": "^19.1.10",
"@types/react-dom": "^19.1.7",
Expand Down
2 changes: 1 addition & 1 deletion example/tanstack-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"zod": "^4.0.17"
},
"devDependencies": {
"@browser-echo/vite": "workspace:*",
"@browser-echo/vite": "1.0.2",
"@types/node": "^24.3.0",
"@types/react": "^19.1.10",
"@types/react-dom": "^19.1.7",
Expand Down
2 changes: 1 addition & 1 deletion example/vue-vite-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"vue": "^3.5.18"
},
"devDependencies": {
"@browser-echo/vite": "workspace:*",
"@browser-echo/vite": "1.0.2",
"@vitejs/plugin-vue": "^6.0.1",
"typescript": "~5.9.2",
"vite": "^7.1.3",
Expand Down
27 changes: 26 additions & 1 deletion packages/core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ This package provides the `initBrowserEcho` function that patches `console.*` me
- Configurable log levels and batching
- Circular reference handling in logged objects
- No production impact (meant for development only)
- Optional network capture (opt-in): fetch, XMLHttpRequest, WebSocket

## Installation

Expand All @@ -42,7 +43,19 @@ initBrowserEcho({
preserveConsole: true,
tag: '[browser]',
batch: { size: 20, interval: 300 },
stackMode: 'condensed'
stackMode: 'condensed',
// Opt-in network logging
networkLogs: {
enabled: true,
captureFull: false,
bodies: {
request: true,
response: true,
maxBytes: 2048,
allowContentTypes: ['application/json', 'text/', 'application/x-www-form-urlencoded'],
prettyJson: true
}
}
});
```

Expand All @@ -67,6 +80,18 @@ interface BrowserEchoOptions {
// server-side
truncate?: number; // default: 10_000 chars (Vite)
fileLog?: { enabled?: boolean; dir?: string }; // Vite-only
// network capture (opt-in)
networkLogs?: {
enabled?: boolean;
captureFull?: boolean;
bodies?: {
request?: boolean;
response?: boolean;
maxBytes?: number; // default 2048 bytes
allowContentTypes?: string[]; // default ['application/json','text/','application/x-www-form-urlencoded']
prettyJson?: boolean; // default true
};
}; // default disabled
}
```

Expand Down
3 changes: 2 additions & 1 deletion packages/core/build.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ export default defineBuildConfig({
entries: [
'./src/index',
'./src/client',
'./src/types'
'./src/types',
'./src/worker'
],
clean: true,
declaration: true,
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@browser-echo/core",
"version": "1.0.1",
"version": "1.1.0-alpha.1",
"type": "module",
"sideEffects": false,
"repository": {
Expand Down
Loading
Loading