This is a Chrome and Edge extension to download the ChatGPT Q&A page into a markdown file.
- 🧮 Perfect Math Formula Parsing: Advanced KaTeX support that correctly handles mathematical equations - even fixes ChatGPT's own math formula parsing bugs
- 📋 Complex Markdown Support:
- Tables with complex cell content
- Nested lists (ordered and unordered)
- Multi-level blockquotes
- Code blocks with syntax highlighting preservation
- Inline code formatting
- 🎯 Smart Content Detection: Automatically identifies and properly formats different types of ChatGPT content
- ⚡ One-Click Export: Simple keyboard shortcut (
Alt+Shift+5) or toolbar button click - 🔧 Robust Processing: Handles edge cases and maintains formatting integrity across different ChatGPT UI updates
To install it from the Chrome Web Store, go to this URL: https://chrome.google.com/webstore/detail/chatgpt-to-markdown/ajogklnjecgpjfalkokkencdlbnhiohb
(Extensions on the Chrome Web Store can also be directly installed to Edge too.)
Alternatively, if you'd like to use this extension in the developer mode, following the steps below to install it:
-
Download this extension. You can choose either options:
-
Manually load the downloaded/cloned files into the browser:
Navigate to ChatGPT, and to the conversation that you'd like to save as markdown.
Then click on the icon of this extension, or use the following keyboard shortcut:
- Windows and Linux:
Alt + Shift + 5 - macOS:
Option + Shift + 5
A markdown file will automatically be saved to your Downloads folder.
You can clone this repository, make small tweaks to it (if you code Javascript) as you'd like.
To install and lock the dependencies, run:
npm installTo build the code, run:
npm run buildTo run unit tests, first install dependencies, and then:
npx jestRun this command in the terminal:
npm run auto-formatAnd then check the file diffs.
Every pull request will trigger a CI/CD pipeline run, the steps of which are defined in ./.github/workflows/pipeline.yml.
The pipeline automatically checks for the following:
- The package version (in
package.json) is consistent with the locked-down version (inpackage-lock.json) - Versions in
manifest.jsonandpackage.jsonare consistent - The unit tests can all pass
- The minified script in
distis up to date with the code insrc - The code sytles are correct (running Prettier does not product any file diff)
- The core code is adapted from code files in https://github.com/ryanschiang/chatgpt-export
- The original license is included on the top of the files, if they are partially or fully from the original repository
- ChatGPT helped draw the icon of this extension
- The folder icon_drawing_scripts contains the chat transcript, the Python script for drawing the icon, and all draft icons