cd /news/ai-tools/show-hn-chatlens-search-and-browse-y… · home topics ai-tools article
[ARTICLE · art-94588] src=github.com ↗ pub= topic=ai-tools verified=true sentiment=↑ positive

Show HN: Chatlens – Search and browse your ChatGPT and Claude chats offline

Chatlens, a new open-source tool by an unnamed developer, lets users search and browse their ChatGPT and Claude chat histories entirely offline in the browser, with full-text search, usage timelines, and per-topic insights. The single HTML file, with no dependencies, processes exports locally, indexing up to 100,000 messages in about 13 seconds and searching in under 120 milliseconds, ensuring no data leaves the device.

read3 min views1 publishedAug 13, 2026
Show HN: Chatlens – Search and browse your ChatGPT and Claude chats offline
Image: source

Explore your ChatGPT & Claude history — 100% in your browser.

Drop your export and instantly get full-text search, a usage timeline, per-topic insights, and a clean reader across thousands of chats. Nothing is uploaded, tracked, or stored. Everything runs on your device.

Screenshots use built-in sample data. Your real conversations never leave your browser.

You know you asked your AI that one thing back in March — but the official apps give you no real search and no way to see your own history. chatlens turns your data export into something you can actually explore.

It's a single HTML file with no build step and no dependencies.

Just open it: double-clickindex.html

(works offline, straight from disk), orServe it:python3 -m http.server then visit the printed URL, or host the one file anywhere static (GitHub Pages, Netlify, an S3 bucket…).

Then load your export, or click Explore with sample data to try it with a synthetic dataset — no export needed.

chatlens accepts three shapes, auto-detected:

A single— the standard ChatGPT/Claude export. Drop it or click to choose.conversations.json

A folder of per-conversation files— some ChatGPT exports split each chat into its own.json

. Drag the whole folder onto the page, or use**"select a whole folder."**Multiple files at once— select any number of.json

files together.

Getting the export

ChatGPT→ Settings → Data controls → Export data → unzip the emailed archive.** Claude**→ Settings → Privacy → Export data → unzip.

Both provider formats are detected automatically. chatlens reconstructs each conversation's canonical thread (following the active branch), so regenerated / edited-away branches are excluded from counts — you see the conversation as it stands.

Everything is indexed in-browser in a background Web Worker, so the UI never freezes. Measured on desktop Chrome (M-class laptop):

Export size Conversations Messages One-time index Search
30 MB (real export) 222 4,362 ~1.9 s 6–15 ms
53 MB (synthetic) 2,446 50,000 ~7.8 s ~70 ms
85 MB (synthetic) 4,857 100,000 ~13 s ~120 ms

Indexing is a one-time cost on load, shown with a progress bar, and scales roughly linearly with total text.** Search stays fast**(well under a quarter-second) even when a query matches tens of thousands of messages.** Honest ceiling:**past ~100k messages / a few hundred MB, indexing runs into the tens of seconds and memory use climbs (the index keeps a lowercased copy of message text, so peak RAM is a small multiple of the file size). It's built for real personal histories — thousands to ~100k messages — not for indexing a shared multi-account archive. Extremely large exports may be slow or memory-bound on low-RAM devices.

Full-text search across every message, built as an in-browser inverted index.- Multi-word queries match messages containing all the words. "quoted phrases"

for exact matches.`/regex/`

for regular expressions (e.g.`/colou?r/`

).- Filter by

you vsthe AI, and jump straight from a result into the reader.

  • Multi-word queries match messages containing Timeline— messages per month, plus a day-of-week × hour-of-day heatmap.** Insights**— totals, words written, busiest day, peak hour, models used, longest conversations, and what you talk about most.** Reader**— a clean serif reading view of any conversation with lightweight Markdown (code blocks, lists, bold, links) and per-message model labels.Light & dark themes(paper by default; a warm "reading at night" dark mode).

No backend, no network calls. Open your browser's Network tab, or disconnect from the internet — it works the same. Reload the tab and all data is gone.- Parsing and indexing run in a Web Worker; the main thread only renders. If a browser blocks Blob-URL workers (somefile://

setups), it transparently falls back to a same-interface main-thread parser. - The web client is a single vanilla HTML/CSS/JS file — easy to audit end to end.

No cloud, no LLM calls, no "continue this chat." chatlens reads and understands your existing history; it doesn't talk to any model.

MIT

── more in #ai-tools 4 stories · sorted by recency
── more on @chatlens 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-chatlens-sea…] indexed:0 read:3min 2026-08-13 ·