Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
20 changes: 12 additions & 8 deletions CURRENT_STATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -158,9 +158,13 @@ All v0.1.0 issues complete. Packages published to npm. Web app deployed.

## What's Next

1. **v0.1.0 release** — merge version PR, CI publishes packages, creates tag + GitHub release
2. **v0.2.0** — Scenario evaluator & replay (new failure rules, replay engine, @ocpp-debugkit/react)
3. **v0.3.0** — Integrations & OSS credibility (trace diffing, CI mode, anonymize, examples)
1. **v0.2.0** — Scenario evaluator & replay (expanded failure rules, replay
engine, `@ocpp-debugkit/react`, CLI external scenario files, HTML report
format, app replay UI)
2. **v0.3.0** — Integrations & OSS credibility (trace diffing, CI mode,
anonymize, integration examples)
3. **v1.0.0** — API stabilization, 20+ scenarios, docs overhaul, contributor
onboarding

## Known Blockers / Decisions Pending

Expand All @@ -170,10 +174,10 @@ All v0.1.0 issues complete. Packages published to npm. Web app deployed.

| Package | Status | Version |
|---------|--------|---------|
| `@ocpp-debugkit/core` | done (v0.1.0) | 0.1.0 |
| `@ocpp-debugkit/scenarios` | done (v0.1.0) | 0.1.0 |
| `@ocpp-debugkit/reporter` | done (v0.1.0) | 0.1.0 |
| `@ocpp-debugkit/cli` | done (v0.1.0) | 0.1.0 |
| `@ocpp-debugkit/core` | published | 0.1.1 |
| `@ocpp-debugkit/scenarios` | published | 0.1.1 |
| `@ocpp-debugkit/reporter` | published | 0.1.1 |
| `@ocpp-debugkit/cli` | published | 0.1.1 |
| `@ocpp-debugkit/replay` | not started | — |
| `@ocpp-debugkit/react` | not started | — |
| `apps/web` | done (v0.1.0) | — |
| `apps/web` | deployed | — |
43 changes: 27 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,17 @@ validate behavior against known scenarios.
individual messages, and identify failures.
- **Failure Detection** — Automatically detect common session failure patterns
(failed authorization, connector faults, station offline).
- **Scenario Evaluator** — Run predefined scenarios through the analysis engine
and compare detected vs expected failures.
- **Report Generation** — Export session analysis as Markdown or HTML reports.
- **Scenario Library** — 5 predefined trace scenarios with expected failure
outcomes for testing the analysis engine.
- **Report Generation** — Export session analysis as Markdown reports.
- **CLI** — Analyze traces from the command line.
- **Browser-Local** — All trace processing happens in your browser. No data
leaves your machine when using the web app.

> **Scenario Evaluator & Replay** (comparing detected vs expected failures,
> replay engine, extracted React components) is planned for v0.2.0. See the
> [Roadmap](./ROADMAP.md).

## What It's Not

- Not a CSMS (Charging Station Management System)
Expand All @@ -45,23 +49,20 @@ OCPP DebugKit is a pnpm monorepo with independently versioned packages.
apps/web (single Next.js app)
```

| Package | Description |
|---------|-------------|
| `@ocpp-debugkit/core` | Data model, trace parser, event normalizer, timeline, failure detection |
| `@ocpp-debugkit/scenarios` | Predefined trace scenarios for testing |
| `@ocpp-debugkit/reporter` | Report generators (Markdown, HTML) |
| `@ocpp-debugkit/cli` | Command-line interface |
| `@ocpp-debugkit/replay` | Replay engine (v0.2+) |
| `@ocpp-debugkit/react` | Reusable React components (v0.2+) |
| `apps/web` | Single Next.js app (landing, inspector, docs) |
| Package | Description | Version |
|---------|-------------|---------|
| `@ocpp-debugkit/core` | Data model, trace parser, event normalizer, timeline, failure detection | [![npm](https://img.shields.io/npm/v/@ocpp-debugkit/core.svg)](https://www.npmjs.com/package/@ocpp-debugkit/core) |
| `@ocpp-debugkit/scenarios` | Predefined trace scenarios for testing | [![npm](https://img.shields.io/npm/v/@ocpp-debugkit/scenarios.svg)](https://www.npmjs.com/package/@ocpp-debugkit/scenarios) |
| `@ocpp-debugkit/reporter` | Report generators (Markdown) | [![npm](https://img.shields.io/npm/v/@ocpp-debugkit/reporter.svg)](https://www.npmjs.com/package/@ocpp-debugkit/reporter) |
| `@ocpp-debugkit/cli` | Command-line interface | [![npm](https://img.shields.io/npm/v/@ocpp-debugkit/cli.svg)](https://www.npmjs.com/package/@ocpp-debugkit/cli) |
| `@ocpp-debugkit/replay` | Replay engine | _planned (v0.2.0)_ |
| `@ocpp-debugkit/react` | Reusable React components | _planned (v0.2.0)_ |
| `apps/web` | Single Next.js app (landing, inspector, docs) | — |

**Build order:** core → scenarios/reporter/replay → cli → app

## Quickstart

> Packages are not yet published to npm. This section will be updated when
> v0.1.0 is released.

### From source

```bash
Expand All @@ -71,13 +72,23 @@ pnpm install
pnpm build
```

### CLI (when published)
### CLI

Packages are published to npm under the `@ocpp-debugkit` scope:

```bash
npm install -g @ocpp-debugkit/cli
ocpp-debugkit inspect trace.json
```

Other commands:

```bash
ocpp-debugkit report trace.json --output report.md
ocpp-debugkit scenario list
ocpp-debugkit scenario run failed-auth
```

### Web App

Visit [ocppdebugkit.com/inspector](https://ocppdebugkit.com/inspector) to
Expand Down
17 changes: 10 additions & 7 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Each milestone maps to a semantic version release.

## M0 — Repository & Tooling Foundation

**Status:** In progress
**Status:** ✅ Complete (merged via PR #12–#15)

Professional monorepo skeleton with CI, linting, testing, release tooling,
GitHub metadata, and agent onboarding docs — before any feature code lands.
Expand All @@ -31,7 +31,7 @@ all work. CI green on main. No release yet — infrastructure only.

## M0.5 — Protocol & Trace-Format Design Phase

**Status:** Not started
**Status:** ✅ Complete (merged via PR #19)

Resolve all foundational design decisions before core implementation.
Produce ADRs and synthetic fixtures that validate the internal model.
Expand All @@ -53,7 +53,9 @@ validate against proposed model. Maintainer approves design.

## v0.1.0 — Inspector MVP

**Status:** Not started
**Status:** ✅ Released — GitHub release `release-v0.1.0`, packages published
to npm at 0.1.1 (`@ocpp-debugkit/core`, `scenarios`, `reporter`, `cli`).
Web app deployed at ocppdebugkit.com.

A user visits ocppdebugkit.com, loads a trace, sees a timeline, sees detected
failures, and exports a report — without installing anything. Developers can
Expand All @@ -64,18 +66,19 @@ also use the CLI locally.
- **Scenarios:** 5 initial scenarios with expected failures
- **Reporter:** Markdown report generator
- **CLI:** inspect, report, scenario list/run commands
- **App:** Single Next.js app (landing, inspector, docs via Nextra)
- **App:** Single Next.js app (landing, inspector, docs)
- **Tests:** Playwright smoke tests
- **Docs:** Quickstart, glossary, architecture, CLI reference, API reference
- **Docs:** Quickstart, glossary, architecture, CLI reference, scenarios

**Exit criteria:** Hosted demo, CLI on npm, trace→timeline→failures→report
workflow, 5 scenarios, 3 failure rules, GitHub release `release-v0.1.0`.
workflow, 5 scenarios, 3 failure rules, GitHub release `release-v0.1.0`. ✅ All
met.

---

## v0.2.0 — Scenario Evaluator & Replay

**Status:** Not started
**Status:** Next up

Make the tool genuinely useful for developers' daily workflows.

Expand Down
58 changes: 35 additions & 23 deletions apps/web/README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,48 @@
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
# OCPP DebugKit — Web App

## Getting Started
The web front-end for [OCPP DebugKit](https://github.com/ocpp-debugkit/ocpp-debugkit),
a DevTools project for debugging OCPP charging session traces.

First, run the development server:
This is a [Next.js](https://nextjs.org) app (App Router) using Tailwind CSS. It
is the only app in the monorepo and hosts the landing page, trace inspector,
and documentation.

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
## Routes

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
| Route | Description |
|-------|-------------|
| `/` | Landing page — hero, features, architecture, quick start |
| `/inspector` | Trace inspector — paste/upload a trace, view timeline, failures, export report |
| `/docs` | Documentation — quickstart, glossary, architecture, trace format, CLI reference, scenarios |

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
## Architecture

This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
All trace processing happens client-side in the browser — no trace data is
uploaded to a server. The app uses workspace dependencies on
`@ocpp-debugkit/core`, `@ocpp-debugkit/scenarios`, and
`@ocpp-debugkit/reporter` for parsing, analysis, and report generation.

## Learn More
## Development

To learn more about Next.js, take a look at the following resources:
```bash
# From the monorepo root
pnpm install
pnpm dev
```

Open [http://localhost:3000](http://localhost:3000).

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
## Testing

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
Playwright E2E smoke tests cover the landing page, navigation, and inspector
flows:

## Deploy on Vercel
```bash
# From apps/web
pnpm exec playwright install --with-deps chromium
pnpm test:e2e
```

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
## License

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
Apache 2.0 — see the [monorepo LICENSE](../../LICENSE).
Loading