A lightweight, customizable chat channel switcher addon for World of Warcraft that displays quick-access buttons above your active chat frame.
/chatbaror/cb- Open settings panel/chatbar toggle- Toggle bar visibility/chatbar show- Show the bar/chatbar hide- Hide the bar/chatbar reset- Reset all settings to defaults/chatbar help- Display help information
Access via:
/chatbaror/cbcommand- Interface → AddOns → ChatBar
- Game Menu (ESC) → Interface → AddOns → ChatBar
- Supported Languages: English (enUS), German (deDE), Spanish (esES), French (frFR), Russian (ruRU)
- UTF-8 Support: Full multi-byte character support for Cyrillic, Asian, and other multi-byte character sets
- Auto-detection: Uses your WoW client's language automatically
- Fallback System: Defaults to English if translation missing
- Smart Text Extraction: Properly handles first-character extraction for all languages
ChatBarDB- Account-wide settings (shared across all characters)ChatBarCharDB- Per-character settings (unique to each character)
- Lightweight: Minimal memory footprint (~100KB)
- Event-driven: Only updates when game state changes
- No continuous polling: Uses WoW's event system efficiently
- Texture caching: Reuses button objects from pool
ChatBar/
├── ChatBar.lua # Main addon logic
├── ChatBar.toc # Addon manifest
├── ChatBar.tga # Addon icon
├── Config.lua # Settings panel UI
├── README.md # Documentation
└── Locales/
├── Locales.lua # English (base)
├── deDE.lua # German
├── esES.lua # Spanish
├── frFR.lua # French
└── ruRU.lua # RussianTo add a new language:
- Create
Locales/xxXX.lua(e.g.,zhCN.luafor Chinese) - Add to
ChatBar.tocfile list - Copy structure from
Locales.lua - Translate all strings
- Submit as contribution
When reporting bugs, please include:
- WoW Version: Game patch number (e.g., 12.0.0.65560)
- Addon Version: ChatBar version (shown in
/chatbar) - Steps to Reproduce: Clear description of what you did
- Expected vs Actual: What should happen vs what actually happens
- Error Messages: Any Lua errors from BugSack or similar addon
- Other Addons: List of other chat addons installed
Feature suggestions are welcome! Prioritization based on:
- Community interest
- Technical feasibility
- Alignment with addon purpose (lightweight chat channel switcher)
Contributions welcome via:
- Bug reports and testing
- Localization translations
- Code improvements
- Documentation updates
ChatBar uses automated publishing to CurseForge via GitHub Actions.
- Ensure all changes are committed and pushed to the main branch
- Create an annotated Git tag with the version number:
git tag -a v2.3.0 -m "Release 2.3.0" - Push the tag to trigger the release workflow:
git push origin v2.3.0
- Monitor the workflow at https://github.com/YOUR-USERNAME/chatbar/actions
- Verify the release:
- Check CurseForge project page for the new version
- Review the auto-generated changelog from commit messages
- Stable releases:
v2.3.0,v2.4.0,v3.0.0 - Beta releases:
v2.3.0-beta,v2.3.0-beta.2(marked as beta on CurseForge) - Alpha releases:
v2.3.0-alpha,v3.0.0-alpha.1(marked as alpha on CurseForge)
The packager automatically generates changelogs from Git commits between tags. Write commit messages for end users:
- ✅ Good: "Fix memory leak in button pooling", "Add Korean translation", "Update TOC to 11.0.5"
- ❌ Avoid: "fix", "wip", "updates", "misc changes"
The following files are included in the CurseForge package:
- All
.luaand.xmlfiles ChatBar.toc(with version automatically updated from tag)Bindings.xml- All files in
Locales/andSkins/directories
The following are excluded:
.github/directory (except workflow runs).vscode/directoryREADME.md.gitignore,.pkgmeta
This addon is free software provided as-is for World of Warcraft players. Feel free to modify and distribute with attribution.