Skip to content

myferr/meow

Repository files navigation

meow

CI Latest Release License

meow is a fast, terminal-based IRC client written in Rust.


Installation

Windows (PowerShell)

irm https://raw.githubusercontent.com/myferr/meow/main/scripts/install.ps1 | iex

Linux / macOS (Bash)

curl -fsSL https://raw.githubusercontent.com/myferr/meow/main/scripts/install.sh | bash

Make sure ~/.local/bin is in your PATH if you're on a Unix-based (*NIX) system.


Binary Downloads

Prebuilt binaries for Linux, macOS (Intel & Apple Silicon), and Windows are available on the Releases page.


Usage

meow                                                       # Start interactive experience

# Use the following commands while in interactive mode using meow

/connect <server> <port> <nickname> <tls? (true/false)>    # connect to a server, you can configure a default port, nick, and TLS option if you don't want to fill it out.

/join <#channel>                                           # join a channel
/part <#channel>                                           # leave a channel

/msg <#channel>/<user> <message>                           # send a PRIVMSG to a channel or user.

/quit                                                      # exit the program

You can configure defaults in:

# ~/.meow/config.toml

[irc]
nick = "mycat"
tls = true
port = 6697

[theme]
background = "" # hex code (optional)
foreground = "" # hex code (optional)
muted = "" # hex code (optional)
accent = "" # hex code (optional)
icons = true  # enable Nerd Font icons (optional)

[emojis]
shrug = "¯\\_(ツ)_/¯" # use like :shrug: in /msg commands.
cat = ":3" # use like :cat: in /msg commands.

Windows systems use %USERPROFILE%/meowconf/config.toml

The config file is 100% optional. Channel/server are passed via CLI.


Features

Clean & readable terminal UI

  • Scrollback + input history
  • Auto-reconnect
  • Nerd Font icons (optional)
  • Zero external config required

License

Licensed under the MIT License. See LICENSE for details.


Contributing

See CONTRIBUTING.md

To-do

  • TLS support
  • SSL support
  • Connect to servers
  • Join channels
  • Leave/part channels
  • Send and receive messages
  • Display help prompt
  • Scrollback (PgUp/PgDn support)
  • Input history (arrow key navigation)
  • Word wrap & terminal overflow handling
  • Auto-reconnect on disconnect
  • Graceful error handling (no panics or unwraps)
  • Config file support (~/.meow/config.toml)
  • Adding configurable themes in ~/.meow/config.toml
  • Emoji support via configurable aliases in ~/.meow/config.toml
  • Polish up the program
  • Windows and cross-platform builds

Other stuff :3