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
docs: reframe root README as monorepo with tree-shaking tools
The repo has expanded beyond OIDC DevTools to include treeshake-check
and eslint-plugin-treeshake. Restructure the README to present an
umbrella monorepo with grouped package tables, quick-start sections
for each tool domain, and an architecture diagram for the tree-shaking
toolchain. Update the root package.json description accordingly.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+98-51Lines changed: 98 additions & 51 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,29 +1,38 @@
1
1
# WolfCola DevTools
2
2
3
-
**Captures, correlates, and diagnoses** OIDC/OAuth 2.0 authentication flows in real time — works standalone with any OIDC provider or as an enhanced companion to the Ping Identity SDK.
4
-
5
-
Available as a **browser DevTools panel** (Chrome & Firefox) and a **VS Code extension** (via Chrome DevTools Protocol). Both share the same annotation engine, diagnosis rules, and Elm UI.
6
-
7
-

3
+
A monorepo of developer tools — OIDC/OAuth 2.0 diagnostics, tree-shaking analysis, and more. Built with TypeScript, Effect, and pnpm workspaces.
|[`devtools-ui`](packages/devtools-ui)| Shared Elm UI — compiled JS, CSS, TypeScript port interface | private |
19
-
|[`devtools-bridge`](packages/devtools-bridge)| SDK adapter — emits events from DaVinci, Journey, and OIDC clients |[](https://www.npmjs.com/package/@wolfcola/devtools-bridge)|
20
-
|[`devtools-types`](packages/devtools-types)| Effect Schema definitions for AuthEvent, FlowState |[](https://www.npmjs.com/package/@wolfcola/devtools-types)|
9
+
### OIDC DevTools
10
+
11
+
Captures, correlates, and diagnoses OIDC/OAuth 2.0 authentication flows in real time — works standalone with any OIDC provider or as an enhanced companion to the Ping Identity SDK. Available as a browser DevTools panel and a VS Code extension.
|[`treeshake-check`](packages/treeshake-check)| CLI & library — checks whether a package can be fully tree-shaken by Rollup |[](https://www.npmjs.com/package/@wolfcola/treeshake-check)|
29
+
|[`eslint-plugin-treeshake`](packages/eslint-plugin-treeshake)| ESLint plugin that flags code patterns known to break tree-shaking |[](https://www.npmjs.com/package/@wolfcola/eslint-plugin-treeshake)|
21
30
22
31
---
23
32
24
33
## Quick start
25
34
26
-
### Browser extension
35
+
### OIDC browser extension
27
36
28
37
```bash
29
38
pnpm install
@@ -33,7 +42,7 @@ pnpm build:firefox # Firefox
33
42
34
43
Load the extension as unpacked from `packages/devtools-extension/dist/` — see the [extension README](packages/devtools-extension) for full instructions.
35
44
36
-
### VS Code extension
45
+
### OIDC VS Code extension
37
46
38
47
```bash
39
48
pnpm install
@@ -56,16 +65,38 @@ In the VS Code window, run `Ctrl+Shift+P` → **"OIDC DevTools: Start Capture"**
56
65
57
66
See the [VS Code extension README](packages/vscode-extension) for detailed setup, troubleshooting, and the mock OIDC server for testing.
The ESLint plugin provides fast, per-file feedback during development. `treeshake-check` runs a full Rollup build for ground-truth verification in CI. When `bundleCheck: true` is set in the ESLint plugin, it delegates to `treeshake-check` and maps results back to source locations.
159
+
113
160
---
114
161
115
162
## Network-first OIDC intelligence
116
163
117
-
The extension automatically detects and annotates OIDC/OAuth 2.0 traffic without any SDK integration. It works out of the box with **any OIDC provider** — Ping Identity, Auth0, Okta, Keycloak, or any spec-compliant authorization server.
164
+
The OIDC extension automatically detects and annotates OIDC/OAuth 2.0 traffic without any SDK integration. It works out of the box with **any OIDC provider** — Ping Identity, Auth0, Okta, Keycloak, or any spec-compliant authorization server.
118
165
119
166
**Well-known discovery** — parses `/.well-known/openid-configuration` responses and matches subsequent requests against discovered endpoints.
120
167
121
168
**OIDC semantic annotation:**
122
169
123
-
| Phase | Extracted data |
124
-
| --- | --- |
125
-
|**discovery**| Issuer, all discovered endpoints |
@@ -141,15 +188,15 @@ The extension automatically detects and annotates OIDC/OAuth 2.0 traffic without
141
188
142
189
Every captured event is run through a rule engine that produces flow-level and per-event diagnostics with severity ratings and numbered remediation steps.
|`pnpm changeset`| Create a changeset for versioning |
236
+
|`pnpm version`| Apply changesets and bump versions |
237
+
|`pnpm release`| Build and publish to npm|
191
238
192
239
### Tech stack
193
240
@@ -202,7 +249,7 @@ pnpm lint # eslint
202
249
203
250
## Security and privacy
204
251
205
-
The extension requests only `storage` and `clipboardWrite`/`clipboardRead` — no `cookies`, `webRequest`, `tabs`, or other sensitive APIs. Content scripts use a two-world architecture to prevent arbitrary page code from injecting messages into the background script. All SDK events are decoded through `AuthEventSchema` (Effect Schema) before reaching the EventStore — malformed payloads are dropped. Captured data is stored locally and never transmitted off-device.
252
+
The OIDC extension requests only `storage` and `clipboardWrite`/`clipboardRead` — no `cookies`, `webRequest`, `tabs`, or other sensitive APIs. Content scripts use a two-world architecture to prevent arbitrary page code from injecting messages into the background script. All SDK events are decoded through `AuthEventSchema` (Effect Schema) before reaching the EventStore — malformed payloads are dropped. Captured data is stored locally and never transmitted off-device.
0 commit comments