Skip to content

About

Because "export your data" shouldn't mean "good luck with that". ChatGPT, Claude & Gemini chats → plain Markdown, readable by humans, machines and Obsidian | 100% local.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

FREE YOUR CHAT

License: MIT 100% local Zero dependencies PWA

Versione italiana

A local converter that turns your ChatGPT, Claude and Gemini data exports into Markdown files ready for Obsidian.

Everything runs in your browser. Your files stay on your computer, nothing is uploaded.

Try it now: phil-pje.github.io/Free-your-chat

Demo: load your export, browse chats in reading and table view

Why

If you use AI assistants every day, your chats slowly become a real knowledge base: ideas, decisions, drafts, things you figured out once and don't want to figure out again.

Getting that knowledge back out, though, is not trivial. Official exports are built for machines, not for people: Claude, for example, gives you a JSON file on a single line. If you don't know what a JSON is, your own conversations are effectively locked away.

Free Your Chat turns those exports into plain Markdown notes you can read, search and keep in Obsidian, or in any folder, on your machine, forever. Your conversations, in a format that belongs to you.

What it does

  • Reads ChatGPT exports (conversations.json, chat.html or the whole zip), Claude exports (conversations.json + projects.json) and Gemini (MyActivity.json from Google Takeout)
  • Shows your conversations in a local interface (reading or table view)
  • Search, group by source / project / month, pick what to export
  • Reorganize chats into projects with drag & drop
  • Generates .md notes with YAML frontmatter, organized by source, project and date
  • Builds a Chat/index.md index note
  • Interface in English and Italian (IT/EN toggle, auto-detected from your browser)
  • Installable as an app (PWA), works offline
  • Zero external dependencies: the parsers, the Markdown generator and the ZIP reader/writer are all written from scratch in this project

Design

Minimal typographic interface, inspired by Nous Research: monospace, petrol ink on white paper, dashed rules, no shadows. Light and dark theme (the negative: midnight-blue paper, light ink).

Quick start

Open the online page or download the repo and double-click index.html (works offline too).

Drag your export file onto the page:

  • ChatGPT: the whole export .zip, or conversations.json / chat.html
  • Claude: the export .zip or the extracted .json files
  • Gemini: MyActivity.json from Google Takeout

When you're done you can:

  • save directly into a folder (Chrome and Edge): pick a folder inside your Obsidian vault
  • download a ZIP with all the Markdown files

Loaded chats survive a page refresh (local IndexedDB); remove them any time from Options → Clear loaded data.

Install as an app (PWA)

From the online page: browser menu → Install Free Your Chat (on mobile: "Add to Home screen"). The app opens in its own window and works without a connection.

Local server (optional)

Normally not needed: double-clicking index.html is enough. Use the local server only if your browser blocks something when opening the file directly, or to try the PWA locally (the service worker requires http):

npm start

Then open http://localhost:8123. No external dependencies needed.

Commands

npm test        # automated tests (parsers, markdown, zip, i18n)
npm run build   # rebuilds index.html from sources
npm start       # optional local server

Project structure

File Purpose
index.html ready-to-open app
src/template.html interface source
src/shell-prefix.html single-file bundle loader
parsers.js export readers
markdown.js Markdown generation
zip.js ZIP reader/writer
build.js rebuilds index.html
serve.js optional local server
manifest.webmanifest + sw.js + icons/ PWA and offline support
test/run-tests.js automated tests

Privacy

Everything happens locally: no data ever leaves your browser. No analytics, no cookies, no network requests (besides loading the page itself).

Contributing

Issues and pull requests are welcome. One rule: never include real chat exports, personal .zip files or backup folders. The .gitignore keeps them out.

License

MIT

About

Because "export your data" shouldn't mean "good luck with that". ChatGPT, Claude & Gemini chats → plain Markdown, readable by humans, machines and Obsidian | 100% local.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages