Skip to content
 
 

Repository files navigation

DiscordEmotify

Status Made in Ukraine

Build Release Downloads Discord Fuck Russia

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

Icon

DiscordEmotify is a CLI/GUI tool that reacts to every message in a selected Discord channel (including DMs) with an emoji you provide. It uses a robust Discord API client and rate-limit handling to perform bulk reactions safely.

❔ If you have questions or issues, please refer to the docs.

💬 If you want to chat, join my Discord server.

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

  • This repository contains a CLI/GUI application; build locally using the .NET SDK:

    1. Install .NET 9 SDK: https://dotnet.microsoft.com/download

    2. Build:

      • Windows PowerShell:

        dotnet build .\DiscordEmotify.sln -c Release
    3. Run from the CLI project output folder or with dotnet run.

Important: To launch the GUI version of the app on MacOS, you 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 DiscordEmotify.app.

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

Note: AUR and Nix packages linked above are maintained by the community. If you have any issues with them, please contact the corresponding maintainers.

Features

  • Add reactions to every message in a channel or across all DMs
  • Supports user or bot tokens (token type is auto-detected)
  • Respects Discord rate limits (configurable advisory vs hard limits)
  • Date range boundaries (--after, --before) and message filtering (--filter)
  • Parallel processing across channels with --parallel

Note: Your account/bot must have permission to add reactions in the target channels.

Automating user accounts may be against Discord ToS — use at your own risk.

Usage

  • React to specific channel(s) (can pass category IDs to include all its channels):

    # Standard emoji by Unicode
    DiscordEmotify.Cli.exe react --token "<TOKEN>" --channel 123456789012345678 --emoji 🙂
    
    # Standard emoji by code
    DiscordEmotify.Cli.exe react --token "<TOKEN>" --channel 123 --emoji :smile:
    
    # Custom emoji: name:id
    DiscordEmotify.Cli.exe react --token "<TOKEN>" --channel 123 --emoji party_parrot:987654321098765432
    
    # Only messages after/before specific IDs or dates, with a filter
    DiscordEmotify.Cli.exe react -t "<TOKEN>" -c 123 --emoji 🙂 --after 2024-01-01 --filter "from:me AND has:embed"
  • React across all direct message channels:

    DiscordEmotify.Cli.exe reactdm --token "<TOKEN>" --emoji 🙂

Commands

  • react — React to every message in one or more channels.
    • Options: --token, --respect-rate-limits, --channel, --emoji, --after, --before, --filter, --parallel
  • reactdm — React to every message across all DM channels.
    • Options: --token, --respect-rate-limits, --emoji, --after, --before, --filter, --parallel

See also

About

React with an emote to every DM with a friend

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages