Saves Discord chat logs to a file
Find a file
Boden 3fd42d924e feat(scrape): sync GUI bridge doc into linux-x64 folder
Add sync-gui-bridge-doc.sh to copy the versioned bridge markdown beside
the GUI zip; includes offline smoke test (18 total via run-all-smokes).
2026-05-29 16:10:17 -05:00
.assets Update screenshot 2023-02-16 23:16:04 +02:00
.compound-engineering feat(validation): comprehensive recurring scraper validation suite and documentation 2026-05-27 12:57:32 -05:00
.docs docs(scrape): LFG closure — operator handoff in setup guides 2026-05-29 16:05:42 -05:00
.github fix(scrape): disk preflight before compose and skippable disk errors 2026-05-29 15:27:39 -05:00
config fix(scrape): append safely under Documents with flexible auth 2026-05-28 00:58:03 -05:00
DiscordChatExporter.Cli Remove BOM 2026-04-19 23:13:12 +03:00
DiscordChatExporter.Cli.Tests Remove BOM 2026-04-19 23:13:12 +03:00
DiscordChatExporter.Core Add recurring CLI scrape automation 2026-05-24 17:04:07 -05:00
DiscordChatExporter.Gui Refactor fetching Avalonia TopLevel 2026-05-02 11:30:14 +03:00
docs feat(scrape): sync GUI bridge doc into linux-x64 folder 2026-05-29 16:10:17 -05:00
scripts feat(scrape): sync GUI bridge doc into linux-x64 folder 2026-05-29 16:10:17 -05:00
.gitignore fix(scrape): auth discovery, skip forbidden channels, mount host script 2026-05-28 14:57:16 -05:00
Directory.Build.props Remove lang version from build props 2026-05-03 16:01:32 +03:00
Directory.Packages.props Update for Avalonia 12 2026-05-01 16:30:11 +03:00
DiscordChatExporter.Cli.dockerfile Migrate to Centralized NuGet Package Management (CPM) (#1489) 2026-02-26 21:29:46 +02:00
DiscordChatExporter.slnx Standardize repo structure 2026-04-19 16:24:23 +03:00
docker-compose.yml fix(scrape): address residual review findings R1–R3 2026-05-29 13:56:29 -05:00
docker-entrypoint.sh Fix pathing in docker entrypoint 2024-01-31 21:32:40 +02:00
Dockerfile Add recurring CLI scrape automation 2026-05-24 17:04:07 -05:00
favicon.icns Update favicon 2026-03-31 23:47:26 +03:00
favicon.ico Update favicon 2026-03-31 23:47:26 +03:00
favicon.png Update favicon 2026-03-31 23:47:26 +03:00
global.json Update to .NET 10 2025-11-11 19:46:22 +02:00
License.txt Update license year 2025-12-06 19:20:21 +02:00
NuGet.config Update NuGet.config 2022-04-22 17:03:03 +03:00
Readme.md docs(scrape): track GUI zip bridge doc in source repo 2026-05-29 16:08:36 -05:00
scrape.env.example fix(scrape): auth discovery, skip forbidden channels, mount host script 2026-05-28 14:57:16 -05:00
STRATEGY.md feat(scrape): harden preflight and cron config for Documents archives 2026-05-29 13:49:09 -05:00

DiscordChatExporter

Status Made in Ukraine Build Coverage Release Downloads Pulls Discord Fuck Russia

Development of this project is entirely funded by the community. Consider donating to support!

Icon

DiscordChatExporter is an application that can be used to export message history from any Discord channel to a file. It works with direct messages, group messages, and server channels, and supports Discord's dialect of markdown as well as most other rich media features.

Warning

While DiscordChatExporter allows it, automating user accounts is against Discord TOS and may result in you getting banned. If possible, use a bot to export chat logs from accessible channels.

Terms of use[?]

By using this project or its source code, for any purpose and in any shape or form, you grant your implicit agreement to all the following statements:

  • You condemn Russia and its military aggression against Ukraine
  • You recognize that Russia is an occupant that unlawfully invaded a sovereign state
  • You support Ukraine's territorial integrity, including its claims over temporarily occupied territories of Crimea and Donbas
  • You reject false narratives perpetuated by Russian state propaganda

To learn more about the war and how you can help, click here. Glory to Ukraine! 🇺🇦

Download

  • Graphical user interface (desktop app):
    • 🟢 Stable release: look for DiscordChatExporter.*.zip
    • 🟠 CI build: look for DiscordChatExporter.*.zip
    • 📦 Scoop: scoop install extras/discordchatexporter (community-maintained)
    • 📦 WinGet: winget install Tyrrrz.DiscordChatExporter.GUI (community-maintained)
    • 📦 AUR: yay -S discord-chat-exporter-gui (community-maintained)
    • 📦 Nix: nix-shell -p discordchatexporter-desktop (community-maintained)
  • Command-line interface (terminal app):
    • 🟢 Stable release: look for DiscordChatExporter.Cli.*.zip
    • 🟠 CI build: look for DiscordChatExporter.Cli.*.zip
    • 🐋 Docker: docker pull tyrrrz/discordchatexporter
    • 📦 WinGet: winget install Tyrrrz.DiscordChatExporter.CLI (community-maintained)
    • 📦 AUR: yay -S discord-chat-exporter-cli (community-maintained)
    • 📦 Nix: nix-shell -p discordchatexporter-cli (community-maintained)

Important

To launch the GUI version of the app on MacOS, you may need to first remove the downloaded file from quarantine. You can do that by running the following command in the terminal: xattr -rd com.apple.quarantine DiscordChatExporter.app.

Note

Community-maintained packages are published independently from this repository and may not always be up to date with the latest release.

Note

If you're unsure which build is right for your system, consult with this page to determine your OS and CPU architecture.

Features

  • Cross-platform graphical and command-line interfaces
  • Authentication via either a user or a bot token
  • Multiple output formats: HTML (dark/light), TXT, CSV, JSON
  • Support for markdown, attachments, embeds, emoji, and other rich media features
  • File partitioning, date ranges, message filtering, and other export options
  • Self-contained exports that can be viewed offline

Screenshots

channel list rendered output

See also