Skip to main content

ChatArchive Overview

ChatArchive is a local-first desktop application and database archive for exported ChatGPT conversations.

It provides a provider-neutral database layer and reader that keeps your conversations browsable, inspectable, and searchable long-term—without relying on cloud platform history or trusting browser storage as the permanent home.

:::warning Privacy Notice Conversations and exports can contain personal data, proprietary code, system paths, credentials, and API keys. ChatArchive processes everything locally, but the generated JSON files and database are readable offline assets. Review your catalog folders before publishing or sharing them. :::


Why ChatArchive Exists

Most chat exports are useful but awkward. They preserve data, not continuity. This project aims to make exported conversations truly readable and reusable:

  • Local Autonomy: Find old conversations, prompts, and snippets without logging into a remote platform.
  • Continuous Handoff: Recover code decisions and context from long-running chats.
  • Asset Retention: Keep image-heavy conversations with local assets intact.
  • Markdown Export: Export individual threads to Markdown for notes, repositories, or documentation.
  • Provider Neutrality: Ingest chats from multiple sources (ChatGPT, Claude, Gemini, local LLM tools) under one unified reader schema.

What It Does Today

  • Tauri Shell: Runs as a native desktop application on top of a React UI.
  • Ingestion Pipeline: Reads ChatGPT/OpenAI ZIP exports, normalizes message trees into ordered threads, and copies matching assets to your local library folder.
  • SQLite Catalog: Stores conversation threads, scroll state, favorites, pins, tags, search terms, and artifact references.
  • Extracted Artifacts: Creates dedicated records for code blocks, document-like Markdown, links, and assets to support targeted retrieval.
  • Rich Search: Allows client-side query operators (such as type:code, language:python, type:document, domain:github.com) combined with phrase, regex, and date filters.
  • Bundled Assets: Uses local Prism builds for syntax highlighting and local Mermaid/ZenUML npm packages for diagram rendering—ensuring it remains functional offline.

Requirements

To run or build ChatArchive locally, you will need:

  • Node.js (v20 or above)
  • npm
  • Rust toolchain (compatible with Tauri 2 desktop packaging)
  • A ChatGPT export containing conversations.json

Setup & Running

Install project dependencies:

npm install

Run the desktop app in development:

npm run tauri:dev

Build the Windows desktop installer bundle:

npm run tauri:build