From 325fddd09ce42a309a5a5f2e26176ffb8cc551a5 Mon Sep 17 00:00:00 2001 From: Snider Date: Fri, 20 Feb 2026 15:11:20 +0000 Subject: [PATCH] docs: add README with quick start and docs links Co-Authored-By: Virgil --- README.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..d869d03 --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +# go-session + +Claude Code JSONL transcript parser, analytics engine, and HTML timeline renderer. Parses Claude Code session files into structured event arrays (tool calls with round-trip durations, user and assistant messages), computes per-tool analytics (call counts, error rates, average and peak latency, estimated token usage), renders self-contained HTML timelines with collapsible panels and client-side search, and generates VHS tape scripts for MP4 video output. No external runtime dependencies — stdlib only. + +**Module**: `forge.lthn.ai/core/go-session` +**Licence**: EUPL-1.2 +**Language**: Go 1.25 + +## Quick Start + +```go +import "forge.lthn.ai/core/go-session" + +sess, stats, err := session.ParseTranscript("/path/to/session.jsonl") +analytics := session.Analyse(sess) +fmt.Println(session.FormatAnalytics(analytics)) + +// Render interactive HTML timeline +err = session.RenderHTML(sess, "timeline.html") + +// Search across all sessions in a directory +results, err := session.Search("~/.claude/projects/my-project", "git commit") +``` + +## Documentation + +- [Architecture](docs/architecture.md) — JSONL format, parsing pipeline, event types, analytics, HTML rendering, XSS protection +- [Development Guide](docs/development.md) — prerequisites, build, test patterns, coding standards +- [Project History](docs/history.md) — completed phases, known limitations, future considerations + +## Build & Test + +```bash +go test ./... +go vet ./... +go build ./... +``` + +## Licence + +European Union Public Licence 1.2 — see [LICENCE](LICENCE) for details.