Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details
Custom Chat
Custom Chat is a client-side Fabric mod for Minecraft 1.21.11 that replaces the vanilla chat screen with a more flexible interface while keeping normal Minecraft chat and command behavior compatible with vanilla servers.
It adds local history, multiple log formats, clickable/hoverable styled text, translation tools, experimental Rank Tooltips, themes, and an optional Twitch IRC HUD with 7TV emote rendering.
Current stable version: 1.0.8
Active development and regular support are currently paused indefinitely while I step away from Minecraft development and focus on other projects. This does not mean the project is permanently abandoned. The source code remains public, issues and pull requests remain available, and development may resume in the future.
Features
Custom chat overlay
Replaces the default chat screen with a styled custom interface.
Keeps normal Minecraft chat messages and commands compatible with vanilla servers.
Client-side only. No server installation required.
Vanilla-compatible message and command sending
Regular chat messages and commands still work normally.
Commands are still sent as Minecraft commands.
Chat messages are still sent as normal Minecraft chat messages.
Local session preview
Shows recent incoming, outgoing, and system messages directly in the custom chat UI.
Keeps Minecraft Text styling where needed for click and hover compatibility.
Supports styled chat lines without breaking vanilla interaction behavior.
Uses bounded preview/layout processing so the UI does not need to rebuild unlimited history every frame.
Outgoing history
Browse previously sent messages and commands.
Shortcut: Ctrl + Up / Down.
Local highlighting
Highlights commands, player mentions, and URLs in the preview.
Helps separate normal messages, commands, and useful interactive text.
Clickable chat compatibility
SuggestCommand inserts text into the Custom Chat input.
RunCommand, OpenUrl, and CopyToClipboard are handled.
Hover events such as text, item, and entity tooltips are supported.
Existing Minecraft style data is preserved where interaction behavior depends on it.
Local chat logs
Saves local chat history in JSONL format.
Also creates readable .log files.
Includes indexed binary history through the bundled GardeLogStore integration.
Supports separate log contexts for servers, singleplayer worlds, and global fallback.
Uses bounded loading and background compatibility writes to reduce unnecessary client-thread work.
Custom Chat Logs viewer
Adds an in-game viewer for local logs.
Supports chat, commands, system messages, and all logs.
Can use binary or readable log data depending on configuration and availability.
Includes search, context switching, bounded loading, wrapping, and scrolling.
Built-in settings screen
Custom Chat has its own in-game settings screen.
Open it with /customchat settings.
Mod Menu is optional and only acts as a shortcut when installed.
YACL is not required.
UI themes
Includes multiple minimal UI themes.
Theme selection is handled through the built-in settings screen.
Supports themed textures for chat, logs, translation, Twitch HUD, and settings UI.
Visual customization
Adjustable background opacity.
Compact mode.
Optional timestamps.
Optional help text.
Local highlighting toggle.
Twitch HUD layout options.
Rank Tooltips
Experimental local tooltip system for configured rank glyphs and nickname colors.
Uses config/custom-chat/rank-tooltips.json.
Does not overwrite existing server hover events.
Keeps existing click events intact.
Supports global and context-specific mappings.
Translation screen
Opens with Shift + Right Click on a message.
Translation is not sent to chat automatically.
The translated text can be inserted into the input field, copied, or opened in Google Translate.
Includes MyMemory support as a simple default provider.
Supports LibreTranslate-compatible endpoints through advanced settings.
Attempts to separate nickname/rank prefixes from the message body before translation.
Treats effectively unchanged provider output as an unchanged result instead of a successful translation.
Twitch HUD
Adds a separate Twitch chat HUD overlay inside Minecraft.
Twitch messages are shown in their own overlay, not injected into normal Minecraft chat.
Supports mock/test messages for checking the HUD without connecting to Twitch.
Supports configurable HUD position, width, opacity, timestamps, title, visible message count, and message lifetime.
Uses bounded message buffering and cached layout data.
Twitch IRC connection
Connect to a Twitch channel from Minecraft through Twitch IRC.
View Twitch chat inside the Minecraft HUD.
Send messages to Twitch from Minecraft only by explicit user action.
Includes connect, disconnect, reconnect, and status commands.
Includes reconnect handling and local outgoing echo suppression.
7TV emote rendering
Loads 7TV global emotes.
Loads 7TV channel emotes.
Renders 7TV emotes inside the Minecraft Twitch HUD.
Includes 7TV status, reload, cache clear, and emote lookup commands.
Uses bounded metadata/image caches and background loading.
Custom Chat 1.0.8 currently renders the preferred static emote image; animated playback is not implemented.
Performance and stability improvements in 1.0.8
Bounded history and log loading.
Cached styled text layouts and wrapped lines.
Background compatibility-log writing.
Bounded translation responses and asynchronous provider requests.
Bounded Twitch/7TV caches and message buffers.
Additional automated validation for localization, styled text, layout, translation, binary logs, and protected builds.
Localization
English
Russian
Spanish
German
Polish
Brazilian Portuguese
French
Simplified Chinese
Controls
Open Custom Chat: U
Browse local outgoing history: Ctrl + Up / Down
Scroll local preview: mouse wheel or Page Up / Page Down
Jump through preview: Home / End
Open translation screen: Shift + Right Click on a message
Open Custom Chat Logs: configurable keybind, unbound by default
Commands
Settings
/customchat settings
Opens the built-in Custom Chat settings screen.
/customchat config
Alias for the settings screen.
/customchat options
Alias for the settings screen.
Twitch HUD
/customchat twitchhud on
Enables the Twitch HUD overlay.
/customchat twitchhud off
Disables the Twitch HUD overlay.
/customchat twitchhud toggle
Toggles the Twitch HUD overlay.
/customchat twitchhud test
Adds local Twitch HUD test messages.
Does not connect to Twitch or send anything.
/customchat twitchhud add <username> <message>
Adds a local mock Twitch HUD message.
/customchat twitchhud clear
Clears Twitch HUD messages.
Twitch IRC
/customchat twitchhud connect
Connects to the configured Twitch channel.
/customchat twitchhud connect <channel>
Connects to a specific Twitch channel.
/customchat twitchhud disconnect
Disconnects from Twitch IRC.
/customchat twitchhud reconnect
Reconnects Twitch IRC.
/customchat twitchhud status
Shows Twitch HUD and IRC status.
/customchat twitchhud send <message>
Sends a message to Twitch chat if sending is enabled and the account is connected.
7TV
/customchat twitchhud 7tv status
Shows 7TV load/cache status.
/customchat twitchhud 7tv find <name>
Checks whether a 7TV emote is loaded.
/customchat twitchhud 7tv reload
Reloads 7TV emotes.
/customchat twitchhud 7tv clearcache
Clears the 7TV cache.
Requirements
Fabric Loader
Fabric API
Fabric Language Kotlin
Optional integrations
Mod Menu
Optional shortcut to open the built-in Custom Chat settings screen.
YACL is not required.
Twitch notes
Twitch support requires user-provided Twitch account settings.
The mod does not include Twitch OAuth tokens, translation API keys, OpenAI keys, Gemini keys, Google keys, or DeepL keys.
Twitch messages are only sent after explicit user action.
7TV emotes are rendered directly inside the Minecraft Twitch HUD. Custom Chat 1.0.8 currently uses static preferred emote images; animated 7TV playback is not implemented.
Privacy notes
Custom Chat can store local chat logs and configuration data.
Logs may contain chat messages, commands, player names, server/world context, timestamps, and interaction metadata.
Recognized authentication-style command arguments are redacted before persistence where supported, but this is not a guarantee that every server-specific sensitive command will be detected.
If you configure Twitch OAuth or a LibreTranslate-compatible API key, those values are local configuration data. Do not upload your config files, tokens, private logs, or screenshots containing credentials.
Why download it?
Custom Chat is useful for players who want a more modern and organized chat interface without changing how normal chat and commands work on servers.
It adds a cleaner layout, styled local history, multiple log formats, clickable message support, translation tools, Rank Tooltips, Twitch chat viewing, 7TV rendering, and quality-of-life improvements while remaining client-side only.
Open source and development status
Custom Chat 1.0.8 is licensed under GNU General Public License v3.0 only (GPL-3.0-only).
The complete source code, build system, protected build pipeline, tests, and developer documentation are public:
Source: https://github.com/Gardeone12/CustomChat
Developer documentation: https://github.com/Gardeone12/CustomChat/tree/main/docs
Issues: https://github.com/Gardeone12/CustomChat/issues
Active development and regular support are currently paused indefinitely.
1.0.8 is the latest stable release and the final planned official release for the foreseeable future.
This does not mean the project is permanently abandoned. Development may resume later, and issues or pull requests may still be reviewed, but there is currently no roadmap, release schedule, or guaranteed response time.
The repository is intended to remain public even if active development resumes.
Fair Play / Anti-cheat note
Custom Chat does not modify movement, combat, hitboxes, inventory, world interaction, or server-side checks.
It does not provide X-Ray, ESP, macros, combat automation, movement cheats, or other gameplay advantages.
The mod is intended for chat UI improvements, local history, local logs, translation, Twitch chat viewing, and other chat-related quality-of-life features.


