# squidowl/halloy

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/squidowl-halloy).**

3,807 stars · 153 forks · Rust · gpl-3.0

## Links

- GitHub: https://github.com/squidowl/halloy
- Homepage: https://halloy.chat/
- awesome-repositories: https://awesome-repositories.com/repository/squidowl-halloy.md

## Topics

`iced` `irc` `rust`

## Description

Halloy is an IRCv3 chat client designed for real-time communication across multiple servers and networks. It implements modern protocol standards, including support for message tags, read markers, rich user metadata, and WebSocket connections.

The project distinguishes itself through integrated anonymity and deep interface customization. It features native Tor and proxy routing to hide the user's connection origin and provides a themed environment with configurable window pane layouts, keyboard aliases, and custom color schemes.

The client covers a broad range of capabilities, including channel and session management, bouncer integration, and automated connection tasks. Messaging features include infinite-scroll history retrieval, regular-expression message filtering, and the ability to execute local system shell commands directly from the interface.

Users can manage application settings and visual themes via configuration files that support signal-based reloading without requiring a restart.

## Tags

### Part of an Awesome List

- [IRC Clients](https://awesome-repositories.com/f/awesome-lists/media/irc-clients.md) — Provides a full-featured chat application for connecting to and participating in multiple IRC networks.
- [Customizable IRC Interfaces](https://awesome-repositories.com/f/awesome-lists/media/customizable-irc-interfaces.md) — Provides a themed IRC environment with custom color schemes, keyboard aliases, and flexible pane layouts.
- [Channel Management](https://awesome-repositories.com/f/awesome-lists/media/voice-and-media/voice-api-connections/channel-management.md) — Manages joining and leaving channels as well as requesting invites from private rooms. ([source](https://halloy.chat/commands))

### Networking & Communication

- [IRC Clients](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/communication-platforms/real-time-collaboration-suites/irc-clients.md) — Provides a comprehensive client for connecting to multiple IRC networks for real-time group and private chat.
- [Real-Time Messaging Protocols](https://awesome-repositories.com/f/networking-communication/real-time-messaging-protocols.md) — Implements a modern IRCv3 protocol for real-time communication, supporting message tags, batching, and rich metadata.
- [Anonymized IRC Clients](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/communication-platforms/real-time-collaboration-suites/anonymized-irc-clients.md) — Offers an IRC client with native Tor and proxy routing to anonymize the user's connection origin.
- [IRC Protocol Connectivity](https://awesome-repositories.com/f/networking-communication/irc-protocol-connectivity.md) — Establishes connections to servers using the IRC text protocol for real-time communication. ([source](https://cdn.jsdelivr.net/gh/squidowl/halloy@main/README.md))
- [IRCv3 Chat Clients](https://awesome-repositories.com/f/networking-communication/ircv3-chat-clients.md) — Implements a desktop chat client for real-time communication using the modern IRCv3 protocol.
- [IRCv3 Protocol Implementations](https://awesome-repositories.com/f/networking-communication/ircv3-protocol-implementations.md) — Implements the IRCv3 protocol standard with support for message tags, read markers, and WebSocket connections.
- [IRCv3 Standard Implementations](https://awesome-repositories.com/f/networking-communication/ircv3-standard-implementations.md) — Implements modern IRCv3 standards to support message tags, batching, and rich user metadata. ([source](https://halloy.chat/))
- [Proxy-Aware Clients](https://awesome-repositories.com/f/networking-communication/proxy-aware-clients.md) — Includes native Tor and proxy routing to anonymize the connection origin.
- [Anonymity Network Routing](https://awesome-repositories.com/f/networking-communication/traffic-routing/anonymity-network-routing.md) — Routes chat traffic through Tor or proxy servers to hide the connection origin and maintain privacy.
- [Chat Channel Discovery](https://awesome-repositories.com/f/networking-communication/chat-channel-discovery.md) — Searches for available chat channels using keywords or lists all available options on a server. ([source](https://halloy.chat/getting-started))
- [Chat History Viewers](https://awesome-repositories.com/f/networking-communication/chat-history-viewers.md) — The project retrieves and displays older messages using infinite scrolling for a continuous view. ([source](https://halloy.chat/guides/connect-with-soju))
- [IRC Bouncers](https://awesome-repositories.com/f/networking-communication/connection-management/irc-bouncers.md) — Enables connections to IRC bouncer services via manual configuration or automatic network detection. ([source](https://halloy.chat/guides/connect-with-soju))
- [Websocket Connection Managers](https://awesome-repositories.com/f/networking-communication/connection-management/websocket-connection-managers.md) — Allows establishing server connections over a WebSocket interface using modern communication extensions. ([source](https://halloy.chat/guides/connect-with-soju))
- [Event Notifications](https://awesome-repositories.com/f/networking-communication/event-notifications.md) — The project triggers alerts for incoming messages, connection changes, and user status updates. ([source](https://halloy.chat/configuration/notifications))
- [Message Content Filtering](https://awesome-repositories.com/f/networking-communication/message-content-filtering.md) — Screens incoming chat traffic and redirects content based on regular-expression pattern matching rules.
- [Messaging Channel Management](https://awesome-repositories.com/f/networking-communication/messaging-channel-management.md) — Joins or leaves chat channels manually via commands or automatically through configuration. ([source](https://halloy.chat/getting-started))
- [History Retrieval](https://awesome-repositories.com/f/networking-communication/messaging-channel-management/history-retrieval.md) — The project requests older history automatically when scrolling to the top of a buffer. ([source](https://halloy.chat/configuration/buffer))
- [Traffic Routing Proxies](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-infrastructure/traffic-routing-proxies.md) — Directs network requests through proxy servers to anonymize the connection origin. ([source](https://halloy.chat/configuration/proxy))
- [Connection and Session Management](https://awesome-repositories.com/f/networking-communication/network-reliability-diagnostics/connection-session-management.md) — Manages server connection lifecycles, including URL-based connection, reconnections, and session termination. ([source](https://halloy.chat/commands))
- [IRC Client Configuration](https://awesome-repositories.com/f/networking-communication/remote-access-control/client-configuration-settings/irc-client-configuration.md) — Customizes servers, notifications, themes, and keyboard shortcuts via a configuration file. ([source](https://halloy.chat/))

### Artificial Intelligence & ML

- [IRC Network Session Management](https://awesome-repositories.com/f/artificial-intelligence-ml/external-server-connectivity/server-connection-managers/irc-network-session-management.md) — Maintains simultaneous active sessions to multiple IRC networks using distinct configuration profiles.
- [Server Connection Managers](https://awesome-repositories.com/f/artificial-intelligence-ml/external-server-connectivity/server-connection-managers.md) — Supports establishing and managing simultaneous connections to multiple IRC servers. ([source](https://halloy.chat/configuration/servers))

### Security & Cryptography

- [Password Authentication](https://awesome-repositories.com/f/security-cryptography/password-authentication.md) — Secures connections and claims nicknames using passwords and credential methods. ([source](https://halloy.chat/configuration/servers))
- [Tor Routing](https://awesome-repositories.com/f/security-cryptography/network-infrastructure-security/web-network-security/network-security/network-routing-access-control/tor-gateways/tor-routing.md) — Integrates native Tor routing to mask user IP addresses without requiring an external daemon. ([source](https://halloy.chat/configuration/proxy))

### User Interface & Experience

- [Chat Interface Customizations](https://awesome-repositories.com/f/user-interface-experience/chat-interface-customizations.md) — Provides a personalized workspace with custom themes, keyboard shortcuts, and flexible window layouts.
- [Custom Color Theme Definitions](https://awesome-repositories.com/f/user-interface-experience/color-themes/custom-color-theme-definitions.md) — Allows the definition of new visual styles by specifying colors and font styles in configuration files. ([source](https://halloy.chat/guides/custom-themes))
- [Keyboard Shortcuts](https://awesome-repositories.com/f/user-interface-experience/component-utilities/keyboard-shortcuts.md) — Sets specific cursor movement and text deletion shortcuts for the message input area. ([source](https://halloy.chat/configuration/buffer))
- [Theme Mappings](https://awesome-repositories.com/f/user-interface-experience/configuration-driven-layouts/theme-mappings.md) — Provides a themed environment where application appearance and layout are defined via external configuration files.
- [Infinite Scroll Components](https://awesome-repositories.com/f/user-interface-experience/infinite-scroll-components.md) — Implements infinite-scroll history loading to automatically retrieve older chat records as the user scrolls up.
- [Interface Appearance Customizations](https://awesome-repositories.com/f/user-interface-experience/interface-appearance-customizations.md) — Allows users to modify visual themes and layouts to personalize the application's appearance. ([source](https://halloy.chat/configuration/themes))
- [User-Defined Keyword Alerts](https://awesome-repositories.com/f/user-interface-experience/styling-theming-systems/content-styling/styling-markup/code-highlighting/semantic-highlighters/semantic-keyword-highlighters/user-defined-keyword-alerts.md) — The project marks messages containing specified words with visual indicators and audio alerts. ([source](https://halloy.chat/configuration/highlights))
- [Typography Customization](https://awesome-repositories.com/f/user-interface-experience/typography-customization.md) — Provides configurations for setting the font family, stretch, and weight across the interface. ([source](https://halloy.chat/configuration/font))

### Business & Productivity Software

- [Application Settings Management](https://awesome-repositories.com/f/business-productivity-software/application-settings-management.md) — Stores user preferences and connection details in a configuration file that supports signal-based reloading. ([source](https://halloy.chat/configuration))
- [Chat Room Administration](https://awesome-repositories.com/f/business-productivity-software/messaging-channel-administration/channel-lifecycle-management/chat-room-administration.md) — Allows setting channel topics, modifying channel modes, and removing users from a channel. ([source](https://halloy.chat/commands))
- [Client-Side Message Filtering](https://awesome-repositories.com/f/business-productivity-software/tag-filtering-systems/client-side-message-filtering.md) — The project hides specific server notifications based on activity or message type to minimize noise. ([source](https://halloy.chat/configuration/buffer))

### Development Tools & Productivity

- [Command Sequence Automation](https://awesome-repositories.com/f/development-tools-productivity/command-sequence-automation.md) — Executes sequences of custom commands or delayed actions automatically after establishing a server connection. ([source](https://halloy.chat/configuration/servers))

### DevOps & Infrastructure

- [Chat-Integrated Uploaders](https://awesome-repositories.com/f/devops-infrastructure/file-uploaders/chat-integrated-uploaders.md) — The project sends files to a compatible host and inserts the resulting URL into the input. ([source](https://halloy.chat/guides/filehost))

### System Administration & Monitoring

- [Buffer View Management](https://awesome-repositories.com/f/system-administration-monitoring/multi-pane-terminal-managers/editor-pane-layouts/buffer-view-management.md) — Configures the interface to either reuse a single active window or open multiple buffers. ([source](https://halloy.chat/guides/single-pane))
- [Keyboard-Navigable Pane Layouts](https://awesome-repositories.com/f/system-administration-monitoring/multi-pane-terminal-managers/editor-pane-layouts/keyboard-navigable-pane-layouts.md) — Arranges the user interface by splitting windows into resizable panes with adjustable gaps. ([source](https://halloy.chat/configuration/pane))
