説明なし

ayn2op 552250a355 fix(cmd/application): prevent duplicate application Run() calls 4 ヶ月 前
.github 0564d3b78e ci: add arm prebuilt binaries for linux and windows 4 ヶ月 前
cmd 552250a355 fix(cmd/application): prevent duplicate application Run() calls 4 ヶ月 前
internal 92eb4425a1 refactor(notifications): remove redundant DM check and use MessageMentions flags only 4 ヶ月 前
.gitignore e976dc6537 refactor: unexport local symbols 11 ヶ月 前
LICENSE 51fa556cd4 SWITCH TO A SUPERIOR LICENSE 1 年間 前
README.md 9a83762580 feat(clipboard): add wayland support (#657) 4 ヶ月 前
go.mod 4ee0320a95 chore(deps): upgrade tcell to v3.0.5 4 ヶ月 前
go.sum 458ea764ae chore: go mod tidy 4 ヶ月 前
main.go 647ce6f9ec refactor(cmd): use cobra for CLI parsing 5 ヶ月 前

README.md

Discordo · discord ci Go Report Card license

Discordo is a lightweight, secure, and feature-rich Discord terminal client. Heavily work-in-progress, expect breaking changes.

Preview

Features

  • Lightweight
  • Configurable
  • Mouse & clipboard support
  • Attachments
  • Notifications
  • 2-Factor & QR code authentication
  • Discord-flavored markdown

Installation

Prebuilt binaries

You can download and install a prebuilt binary here for Windows, macOS, or Linux.

Package managers

  • Arch Linux: yay -S discordo-git
  • Gentoo (available on the guru repos as a live ebuild): emerge net-im/discordo
  • FreeBSD: pkg install discordo or via the ports system make -C /usr/ports/net-im/discordo install clean.
  • Nix: Add pkgs.discordo to environment.systemPackages or home.packages.

  • Windows (Scoop):

    scoop bucket add vvxrtues https://github.com/vvirtues/bucket
    scoop install discordo
    

Building from source

git clone https://github.com/ayn2op/discordo
cd discordo
go build .

Wayland clipboard support

wl-clipboard is required for clipboard support.

Usage

Password

  1. Run the discordo executable with no arguments.

  2. Enter your email and password and click on the "Login" button to continue.

Token

Provide the token command-line flag to the executable.

discordo --token "OTI2MDU5NTQxNDE2Nzc5ODA2.Yc2KKA.2iZ-5JxgxG-9Ub8GHzBSn-NJjNg"

Alternatively, set the value of the DISCORDO_TOKEN environment variable to the authentication token.

[!TIP] You can manually set the token to the keyring using the instructions here.

QR

  1. Run the discordo executable with no arguments.

  2. Click on the "Login with QR" button.

  3. Follow the instructions in the QR Login screen.

Configuration

The configuration file allows you to configure and customize the behavior, keybindings, and theme of the application.

  • Unix: $XDG_CONFIG_HOME/discordo/config.toml or $HOME/.config/discordo/config.toml
  • Darwin: $HOME/Library/Application Support/discordo/config.toml
  • Windows: %AppData%/discordo/config.toml

Discordo uses the default configuration if a configuration file is not found in the aforementioned path; however, the default configuration file is not written to the path. The default configuration can be found here.

FAQ

Manually adding token to keyring

Do this if you get the error:

failed to get token from keyring: secret not found in keyring

Windows

Run the following command in a terminal window. Replace YOUR_DISCORD_TOKEN with your authentication token.

cmdkey /add:discordo /user:token /pass:YOUR_DISCORD_TOKEN

MacOS

Run the following command in a terminal window. Replace YOUR_DISCORD_TOKEN with your authentication token.

security add-generic-password -s discordo -a token -w "YOUR_DISCORD_TOKEN"

Linux

  1. Start the keyring daemon.

    eval $(gnome-keyring-daemon --start)
    export $(gnome-keyring-daemon --start)
    
  2. Create the login keyring if it does not exist already. See GNOME/Keyring for more information.

  3. Run the following command to create the token entry.

    secret-tool store --label="Discord Token" service discordo username token
    
  4. When it prompts for the password, paste your token, and hit enter to confirm.

[!IMPORTANT] Automated user accounts or "self-bots" are against Discord's Terms of Service. I am not responsible for any loss caused by using "self-bots" or Discordo.