crud.md
// crud.md / chat-log-explorer

Make your AI chat history searchable. In one file you own.

Drop the conversations.json from your ChatGPT or Claude export — or a Claude Code .jsonl session log. Get back a single self-contained HTML page — every conversation, with full-text search and date filters baked in — that opens offline in any browser. Nothing is uploaded.

chat-log-explorer · v1.0 local-only

Drop your conversations.json

from a ChatGPT, Claude, or Claude Code (.jsonl) export — or

conversations.json / Claude Code .jsonl · stays on your device

FAQ

Is my chat data uploaded?+

No. Your export is read and turned into an archive entirely in your browser — it is never sent to a server, and the archive you download is a plain file on your own device. We do count anonymous, aggregate usage on our own server (a page view, that an export was processed) — never your conversations, their titles, or their contents.

Where do I get the export?+

In ChatGPT: Settings → Data controls → Export data; you'll be emailed a zip containing conversations.json. In Claude: Settings → Privacy → Export data, which gives you a similar conversations file. For Claude Code, the CLI keeps a JSONL log of every session under ~/.claude/projects/<project>/<session>.jsonl — drop one of those in directly. All three shapes are recognized automatically.

What shows up from a Claude Code log?+

The whole session as a timeline: your prompts, the assistant's replies and reasoning, and every tool call with its result — each as its own entry, in order. Titles come from the session's saved name where one exists. One .jsonl file is one session; upload them one at a time.

What is in the file I download?+

One self-contained chat-archive.html: a sidebar of every conversation grouped by month and sorted newest-first, a full-text search box that filters and highlights matches, and a reading pane. No internet connection, no account, and no dependencies — it works the same in five years as it does today.