Description

AtomChat
A phone-app style chat experience for Minecraft, powered by Skia.
AtomChat is a brand-new chat beautification mod developed in the spirit of E33Chat. It turns the vanilla chat screen into a standalone "phone app" style chat panel: rounded bubbles, custom avatars, real player names, emoji / kaomoji / stickers, image messages, copy & quote, multi-line input, QQ-style motion โ plus more screens beyond chat. A spiritual sequel (jk).
Rendering uses Skija. Every interface is vector-drawn and does not depend on vanilla chat textures.
Vanilla Improvements
- ๐ฌ Chat bubbles & avatars โ your messages show on the right, everyone else's on the left, with real player names and round skin avatars
- ๐งน Clean vanilla HUD placeholders โ outside the panel, image codes show as a green
[Image]and quotes as a blue[Quote] - ๐ Multi-line input โ the composer shows up to two lines and scrolls internally when longer; Up/Down arrows move between lines, while single-line drafts keep the vanilla chat history
- ๐ง Message capture โ real player identity is captured from MessageHandler's three channels; unknown messages degrade to system text
- ๐ Chat history โ when enabled, saved per server / world on disk, restored on rejoin, with configurable auto-cleanup
Features
- ๐ผ๏ธ Image messages โ renders
[[CICode]]natively, interoperable with the E33Chat / ChatImage family; images keep their aspect ratio and can be saved via right-click - ๐ค Local image sending โ pick with the image button, drag into the window, or paste with Ctrl+V; the picker opens in Details view with inline thumbnails
- ๐ Emoji / kaomoji / stickers โ three tabs with a sliding indicator and full-width push transition; sticker packs are stored locally (png/jpg/jpeg, up to 10)
- ๐ Rich text messages โ colors, underlines, click & hover events: /tell, coordinates, FTB accept/deny and external links are all clickable; bare URLs become links automatically
- ๐ Copy / quote reply / save โ right-click a bubble to copy or quote; image bubbles also offer "Save"
- ๐งญ @ / block / profile / tp / whisper โ right-click an avatar for @, block, whisper and quick teleport; a single click opens the player's profile
- ๐ชข Private chat โ the chat list shows currently online players; click one to open the conversation, right-click for its menu
- โก Quick phrases โ the lightning button on the composer opens your phrase list; tap to insert into the input
- ๐จ Skia vector UI & motion โ rounded bubbles, blurred backgrounds, scrolling and QQ-style slide-in animations are all vector-drawn
- ๐ฑ Custom wallpaper / avatar โ upload a local image, crop it, and use it as the interface background or your avatar
- ๐ Localization โ Simplified Chinese and English; switch the Minecraft language to apply
- ๐ Highly configurable โ appearance, colors, preferences and more
Configuration & Storage
- Path โ
.minecraft/config/atomchat/holdsatomchat-client.jsonplus theavatar/debug/emotes/history/wallpaperfolders - [Recommended] In-game settings page (tile home: Appearance / Chat / Privacy & blocking / About) โ every option applies and persists instantly, no restart. Color rows ship with preset palettes, a
+custom picker and live previews - Config file โ edit
atomchat-client.jsondirectly (generated on first launch; restart the game after manual edits) - Chat history โ written to
/historywhen enabled, per world / server - Custom wallpaper โ stored under
/wallpaper - Custom avatars โ stored under
/avatar - Sticker packs โ stored under
/emotes
Compatibility
| Mod / plugin | Status |
|---|---|
[[CICode]] image protocol |
โ Interoperable with the E33Chat / ChatImage family |
| Nick / display-name plugins | ๐ก Best effort (whisper clicks / Tab names / decorated names); extreme unknown formats fall back to gray text |
| ChatHeads | โ Compatible |
| Chat Animation and similar animation mods | โ Compatible |
| EasyBot | ๐ก Best effort (QQ message parsing); unparseable lines fall back to gray text |
| Quark | ๐ซ Emote menu not shown; compatibility in progress |
Known Limitations
- Fabric / NeoForge 1.21.1 only; the Skija Windows x64 native is bundled โ Linux / macOS builds are not packaged yet (cannot run)
- Images upload to the third-party host uguu.se by default and expire after about 3 hours; no server-side media hosting yet (planned)
- No E33Chat whisper sidebar, search, etc. yet
- Player identity resolution is best effort: tell-click structured capture, offline seen cache, multi-tier ownDisplayName fallback; extreme unknown formats fall back to gray text
Privacy & Data
- Local images you send are uploaded to a third-party host (uguu.se by default) and can be saved by others โ do not send sensitive or private content
- Your messages can be saved by players who enabled chat history โ do not send sensitive or private content
- The mod uploads no telemetry / personal information
- Image uploads happen only when you actively pick / paste / drop an image
- Local config and sticker packs stay in
.minecraft/config/atomchat/and never sync automatically
FAQ
Do I need a server? โ No. AtomChat is client-only, but installing it server-side enables the custom avatar feature.
How do I send images? โ Click the image button to pick a local image, or drag one into the window / Ctrl+V paste; the upload is inserted into the draft automatically, then press Enter to send.
Why is a message shown as gray system text? โ When the client cannot be confident it came from a player, it is conservatively rendered as system text (e.g. nick plugins using unparseable formats).
Where are stickers stored? โ .minecraft/config/atomchat/emotes/, up to 10, png / jpg / jpeg.
How do I change colors / sizes? โ Adjust them live in Settings โ Appearance (presets + custom picker); or edit config/atomchat/atomchat-client.json and restart the game.
Can I use it in a modpack? โ Yes. If your modpack distributes the JAR, please keep the third-party notices.
Changelog
See the GitHub CHANGELOG.
Feedback
Found a bug or have a suggestion? Open an issue, or leave a comment on this page.

