# DiscordChatExporter [![Made in Ukraine](https://img.shields.io/badge/made_in-ukraine-ffd700.svg?labelColor=0057b7)](https://tyrrrz.me/ukraine) [![Build](https://img.shields.io/github/actions/workflow/status/Tyrrrz/DiscordChatExporter/main.yml?branch=master)](https://github.com/Tyrrrz/DiscordChatExporter/actions) [![Coverage](https://img.shields.io/codecov/c/github/Tyrrrz/DiscordChatExporter/master)](https://codecov.io/gh/Tyrrrz/DiscordChatExporter) [![Release](https://img.shields.io/github/release/Tyrrrz/DiscordChatExporter.svg)](https://github.com/Tyrrrz/DiscordChatExporter/releases) [![Downloads](https://img.shields.io/github/downloads/Tyrrrz/DiscordChatExporter/total.svg)](https://github.com/Tyrrrz/DiscordChatExporter/releases) [![Discord](https://img.shields.io/discord/869237470565392384?label=discord)](https://discord.gg/2SUWKFnHSm) [![Donate](https://img.shields.io/badge/donate-$$$-8a2be2.svg)](https://tyrrrz.me/donate) [![Fuck Russia](https://img.shields.io/badge/fuck-russia-e4181c.svg?labelColor=000000)](https://twitter.com/tyrrrz/status/1495972128977571848) > 🟑 **Project status**: maintenance mode[[?]](https://github.com/Tyrrrz/.github/blob/master/docs/project-status.md) **DiscordChatExporter** is an application that can be used to export message history from any [Discord](https://discord.com) 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. > ❔ If you have questions or issues, **please refer to the [docs](https://github.com/Tyrrrz/DiscordChatExporter/blob/master/.docs)**. > πŸ’¬ If you want to chat, **join my [Discord server](https://discord.gg/2SUWKFnHSm)**. ## Terms of use[[?]](https://github.com/Tyrrrz/.github/blob/master/docs/why-so-political.md) 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](https://tyrrrz.me). Glory to Ukraine! πŸ‡ΊπŸ‡¦ ## Download This application comes in two flavors: graphical user interface (**GUI**) and command line interface (**CLI**). The following table lists all available download options:
Downloads Supported OS
GUI
  • Windows 7 or higher
CLI
  • 🟒 Stable release (DiscordChatExporter.CLI.zip
  • 🟠 CI build (DiscordChatExporter.CLI.zip)
  • πŸ‹ Docker (tyrrrz/discordchatexporter)
  • πŸ“¦ AUR (discord-chat-exporter-cli)
  • πŸ“¦ Nix (discordchatexporter-cli)
  • Windows 7 or higher
  • macOS 10.13 (High Sierra) or higher
  • Linux (multiple distros)
> **Note**: > AUR and Nix packages linked above are maintained by the community. > If you have any issues with them, please contact the corresponding maintainers. > **Warning**: > To run **DiscordChatExporter** on macOS and Linux, you need to make sure that **.NET 7.0 Runtime** is installed. > You can download it here: > > - [.NET 7.0 Runtime for **macOS x64**](https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-7.0.101-macos-x64-installer) > - [.NET 7.0 Runtime for **macOS Arm64**](https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-7.0.101-macos-arm64-installer) > - [.NET 7.0 Runtime for **Linux**](https://docs.microsoft.com/en-us/dotnet/core/install/linux) (find the correct download for your distro) > > This should not be necessary if you install **DiscordChatExporter** using a package manager, as it should take care of the dependencies for you. > This is also not necessary if you are running **DiscordChatExporter** via Docker, because the image already contains the runtime. ## Features - Graphical user interface (Windows) - Command line interface (Windows, Linux, macOS) - Authentication via both user and bot tokens - 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 don't require internet ## Screenshots ![channel list](.assets/list.png) ![rendered output](.assets/output.png) ## Related projects - [**Chat Analytics**](https://github.com/mlomb/chat-analytics) β€” solution for analyzing chat patterns of Discord users, using exports produced by **DiscordChatExporter**. - [**DiscordChatExporter-frontend**](https://github.com/slatinsky/DiscordChatExporter-frontend) β€” convenient viewer for exports produced by **DiscordChatExporter**.