{"id":46022578,"url":"https://github.com/vengeancestudio/abstractui","last_synced_at":"2026-05-25T03:06:41.056Z","repository":{"id":341126805,"uuid":"1168985662","full_name":"VengeanceStudio/AbstractUI","owner":"VengeanceStudio","description":"**AbstractUI** is a complete, modular, and modern User Interface replacement for World of Warcraft.  Built for **WoW 12.0+**","archived":false,"fork":false,"pushed_at":"2026-03-23T03:28:30.000Z","size":1963,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-23T23:54:04.253Z","etag":null,"topics":["brokers","minimap","ui-customization","unit-frames","user-interface","world-of-warcraft","wow","wow-addon"],"latest_commit_sha":null,"homepage":"https://github.com/Vengeance/AbstractUI/issues","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VengeanceStudio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-28T02:57:02.000Z","updated_at":"2026-03-23T03:25:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"17de8507-6b5d-4ee6-9cb8-d054462d8442","html_url":"https://github.com/VengeanceStudio/AbstractUI","commit_stats":null,"previous_names":["vengeancestudio/abstractui"],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/VengeanceStudio/AbstractUI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VengeanceStudio%2FAbstractUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VengeanceStudio%2FAbstractUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VengeanceStudio%2FAbstractUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VengeanceStudio%2FAbstractUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VengeanceStudio","download_url":"https://codeload.github.com/VengeanceStudio/AbstractUI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VengeanceStudio%2FAbstractUI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31393782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T04:26:24.776Z","status":"ssl_error","status_checked_at":"2026-04-04T04:23:34.147Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brokers","minimap","ui-customization","unit-frames","user-interface","world-of-warcraft","wow","wow-addon"],"created_at":"2026-03-01T03:00:27.020Z","updated_at":"2026-04-04T09:01:55.137Z","avatar_url":"https://github.com/VengeanceStudio.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AbstractUI\n\n![WoW Version](https://img.shields.io/badge/WoW-12.0%2B-blue.svg)\n![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)\n\n**AbstractUI** is a complete, modular, and modern User Interface replacement for World of Warcraft. \n\nBuilt for **WoW 12.0+** (Midnight expansion), it prioritizes readability, performance, and a sleek aesthetic. It removes the clutter of the default Blizzard UI while retaining feature-rich functionality through a suite of integrated modules.\n\n## ✨ Features\n\nAbstractUI is divided into lightweight, independent modules. You can enable or disable each module individually.\n\n---\n\n## 📋 Module Overview\n\n### 🌑 Skins Module\nTransform your entire interface with consistent theming across all UI elements.\n\n**Features:**\n* **Multiple Pre-defined Themes:** AbstractTransparent (default), AbstractGlass, AbstractGreen, and class-specific themes\n* Customizable frame backgrounds and borders with independent transparency controls\n* Applies consistent theming to action bars, tooltips, minimap, unit frames, and info bars\n* Color customization with RGB + alpha controls\n* LibSharedMedia-3.0 integration for custom textures\n\n---\n\n### 📊 Data Broker Bar Module\nA powerful, fully customizable bar system for displaying critical game information at a glance.\n\n**Core Features:**\n* Support for **unlimited custom bars** with independent positioning\n* LibDataBroker-1.1 compatible for third-party data plugins\n* Per-bar configuration: position, size, transparency, fonts, textures, and colors\n* Three alignment sections per bar: Left, Center, Right\n* Click-through mode option\n\n**Built-in Data Brokers:**\n\n| Broker | Description | Features |\n|--------|-------------|----------|\n| **System Info** | FPS, Latency, Memory | Color-coded alerts (green/yellow/red), click for details |\n| **Volume Mixer** | Master sound control | Click to mute/unmute, mousewheel to adjust, visual indicator |\n| **Gold Tracker** | Currency display | Shows total gold, click for character breakdown, WoW Token prices |\n| **Clock** | Time display | 12/24hr format, daily/weekly reset timers, server/local time toggle |\n| **Bag Space** | Inventory tracking | Free/total slots, bag type icons, color-coded warnings |\n| **Durability** | Equipment condition | Percentage display, low durability alerts, click for repair window |\n| **Friends** | Social tracking | Online friend count, click for detailed friend list with class colors |\n| **Guild** | Guild roster | Online guild member count, click for roster with ranks and notes |\n| **Location** | Zone information | Current zone name, coordinates (X, Y), instance difficulty |\n| **Difficulty** | Instance settings | Shows current difficulty mode, click to change |\n| **WoW Token** | Market prices | Current token price, trends, click for auction house link |\n| **Item Level** | Character stats | Average equipped item level |\n\n**Interactive Features:**\n* Expandable friend and guild rosters with detailed information\n* Class coloring for character names\n* Zone level and coordinates\n* Memory usage per addon breakdown\n* Reset timer countdowns\n\n---\n\n### ⚔️ Action Bars Module\nClean, modern action bars that remove Blizzard's default clutter while maintaining full functionality.\n\n**Features:**\n* Removes default artwork (Gryphons, Dragons, decorative elements)\n* Applies skin theming to all action buttons\n* Supports all default action bars (Main, Bottom, Right 1-2, Pet, Stance)\n* Customizable button sizes and spacing\n* Fade-out when not in use (configurable)\n* Hotkey and macro text display options\n* Combat state awareness\n\n---\n\n### 🗺️ Maps Module\nEnhanced minimap with modern aesthetics and improved functionality.\n\n**Features:**\n* **Rectangular/Square minimap** replacing the default circular design\n* Clean borders matching current skin\n* Auto-zoom functionality\n* Coordinate display (X, Y)\n* Cleaned-up tracking icons\n* Customizable size and position\n* Zone text overlay\n* Clock integration\n* Mail/LFG notifications\n\n---\n\n### ✨ Cursor Animate Module\nEnhanced cursor visibility with customizable animation effects and highlighting.\n\n**Features:**\n* **Cursor Animation:** Smooth particle trail following mouse movement\n  - Multiple trail styles: Classic, Rainbow (cycling colors), Comet (bright head)\n  - Adjustable trail length, size, fade speed, and particle spacing\n  - 10+ texture options (Glow, Star, Circle, Spark, Diamond, Triangle, Moon, Orb, etc.)\n* **Cursor Highlight:** Glowing effect around cursor with optional pulse animation\n* **Sparkles Effect:** Idle particle effects that appear when cursor stops moving\n  - Configurable idle delay, spawn rate, lifetime, and drift velocity\n  - Separate color and texture settings\n* **Ring Effect:** Circular ring around cursor with optional features:\n  - GCD (Global Cooldown) tracking with cooldown overlay\n  - Pulse animation synchronized with combat\n  - Multiple ring textures (Circle, Square, Diamond, Star)\n* **Health \u0026 Combat Alerts:**\n  - Low health warning (cursor turns red below threshold)\n  - Aggro/threat warning (cursor turns orange when you have threat)\n  - Visual feedback for combat awareness\n* **Customizable Appearance:**\n  - Individual settings for trail, highlight, sparkles, and ring\n  - Adjustable size, color (RGB + alpha), and blend modes for each effect\n  - Multiple texture styles and animation options\n* **Combat Awareness:**\n  - Option to hide effects during combat\n  - Combat-only highlight mode for better target visibility\n  - Independent control per effect type\n* **Performance Optimized:** Efficient particle system with object pooling and minimal overhead\n* Independent control of trail and highlight effects\n\nPerfect for improving cursor visibility in raids, finding your cursor quickly, or adding visual flair to your UI.\n\n---\n\n### ❤️ Unit Frames Module\nAdvanced, fully customizable unit frames for all unit types with a powerful tag-based text system.\n\n#### Supported Frame Types:\n* **Player Frame** - Your character with health, power, and info bars\n* **Target Frame** - Current target with hostility coloring\n* **Target of Target** - Your target's target\n* **Pet Frame** - For Hunters, Warlocks, Death Knights, and other pet classes\n* **Focus Frame** - Track your focus target\n* **Boss Frames** - Unified system for all 5 boss encounters\n\n#### Core Frame Features:\n\n**Tag System:**\nAdvanced text formatting with dynamic tags:\n* `[curhp]` - Current health value\n* `[maxhp]` - Maximum health value\n* `[perhp]` - Health percentage\n* `[curpp]` - Current power (mana/rage/energy)\n* `[maxpp]` - Maximum power\n* `[perpp]` - Power percentage\n* `[name]` - Unit name\n* `[level]` - Unit level\n* `[class]` - Class name\n* `[classification]` - Elite/Rare status\n\n**Customization Options:**\n* **Independent transparency:** Separate alpha controls for bars and backgrounds\n* **Color options:** Class coloring, power type coloring, custom RGB colors\n* **Hostility coloring:** Green (friendly), Yellow (neutral), Red (enemy)\n* **Bar positioning:** Attach bars to health, power, or info sections\n* **Fonts \u0026 textures:** Full LibSharedMedia-3.0 support\n* **Size \u0026 scale:** Width, height, and scale adjustments per frame\n* **Portrait display:** 2D/3D portraits (where applicable)\n* **Cast bars:** Position, size, color, and text customization\n\n---\n\n### ⏱️ Cooldown Manager Module\n* Built-in digital timers on ability icons\n* Clear, readable cooldown display\n* Customizable font and positioning\n* Can attach Resource Bars to Cooldown Manager\n\n---\n\n### Resource Bars and Cast Bar Modules\n- Primary Power Bar (Mana, Energy, Rage, etc.)\n- Secondary Power Bar (Holy Power, Chi, Runes, etc.)\n- Both bars support smart attachment to Cooldown Manager\n- Cast Bar with optional Spell icon\n- Visual indicator for non-interruptible casts\n\n---\n\n### 🎯 Movable Module\nIntuitive frame positioning system for complete UI customization.\n\n**Features:**\n* **Toggle Move Mode** to unlock frames\n* **Visual highlights** showing movable frames with colored borders\n* **Drag-and-drop positioning** for all frames\n* **Nudge arrows** for pixel-perfect positioning\n* **Reset to default** position functionality\n* **Lock/unlock** individual frames\n* **Preview mode** showing frame boundaries\n* Works with all unit frames, info bars, and minimap\n\n---\n\n### 💬 Chat Module\nEnhanced chat frame with improved readability and modern styling.\n\n**Features:**\n* Restyled chat frames matching current skin\n* Improved text contrast\n* Customizable chat frame borders\n* Integrated button styling\n* Copy chat functionality\n* URL detection and copying\n* Font and size customization\n\n---\n\n### 🛠️ Tweaks Module\nComprehensive quality-of-life improvements and automation features to streamline gameplay.\n\n**Features:**\n\n| Feature | Default | Description |\n|---------|---------|-------------|\n| **Fast Loot** | ✓ ON | Enforces fast auto-loot on login |\n| **Hide Gryphons** | ✓ ON | Removes decorative gryphon/dragon artwork |\n| **Hide Bag Bar** | ✓ ON | Removes the default bag bar for cleaner UI |\n| **Auto-Repair** | ✓ ON | Automatically repairs all items at vendors with cost reporting |\n| **Auto-Repair (Guild)** | OFF | Use guild bank funds for repairs (falls back to personal gold) |\n| **Auto-Sell Junk** | ✓ ON | Automatically sells grey (poor quality) items at merchants |\n| **Auto-Insert Keystone** | ✓ ON | Automatically places Mythic Keystones into font when near pedestal |\n| **Auto-Delete Confirmation** | ✓ ON | Auto-fills \"DELETE\" text when deleting items |\n| **Reveal Map** | ✓ ON | Attempts to reveal unexplored areas on world map |\n| **Auto Screenshot** | OFF | Takes automatic screenshots when earning achievements |\n| **Skip Cutscenes** | OFF | Automatically skips cinematics and movies (great for alts) |\n| **Talent Import Overwrite** | ✓ ON | Adds checkbox to import dialog to overwrite loadouts |\n\n**Automation Details:**\n* **Vendor Automation:** Works at any merchant with repair/sell capabilities\n* **Keystone Support:** Shadowlands/Dragonflight (ID: 180653) and BFA (ID: 158923)\n* **Delete Confirmation:** Works for all item types (regular, good, quest items)\n* **Smart Talent Import:** Prevents duplicate loadout creation\n\n---\n\n### 🎨 UI Buttons Module\nConsistent styling for interface buttons and menus.\n\n**Features:**\n* Styled menu buttons (Character, Spellbook, Talents, Collections, etc.)\n* Themed bag buttons\n* Micromenu button styling\n* Consistent hover effects\n* Matches active skin\n* Proper scaling and positioning\n\n---\n\n### ⚙️ Setup Module\nFirst-time setup wizard for quick configuration.\n\n**Features:**\n* Initial setup wizard on first load\n* Profile creation and management\n* Quick preset selection\n* Module enable/disable configuration\n* Skin selection\n* Frame positioning presets\n* Reset to defaults option\n\n---\n\n## 📦 Dependencies\n\nThis addon includes the following libraries in the `libs` folder:\n* **Ace3** (AceAddon, AceConfig, AceDB, AceEvent, AceHook, AceConsole, AceSerializer)\n* **LibSharedMedia-3.0** (Fonts, Textures, Statusbars)\n* **LibDataBroker-1.1** (Data display integration)\n* **LibCompress** (Data compression utilities)\n* **CallbackHandler-1.0** (Event handling)\n\n## 🚀 Installation\n\n1.  Download the latest release.\n2.  Extract the **AbstractUI** folder.\n3.  Place the folder into your WoW AddOns directory:\n    * `World of Warcraft\\_retail_\\Interface\\AddOns\\`\n4.  Launch World of Warcraft.\n5.  Type `/aui` to open the configuration panel.\n\n## ⚙️ Configuration\n\nAccess the full configuration menu via:\n* Type `/aui` in chat\n\n### Quick Commands\n* `/aui` - Open main settings\n* Toggle Move Mode via the Movable module settings to reposition frames\n\n## 📂 Directory Structure\n\n## 🎮 WoW 12.0+ API Changes\n\nAbstractUI is built for the **Midnight expansion (12.0+)** and uses the latest WoW APIs:\n* `UnitHealthPercent()` and `UnitPowerPercent()` for efficient resource tracking\n* Secure frame system for combat-safe unit frames\n* State drivers for dynamic visibility control\n* Enhanced event handling for smooth updates\n\n## ⚠️ Known Limitations\n\n* **Party Frames:** AbstractUI includes compact party frames that show health and status. For full raid frame functionality (raid healing, detailed buffs/debuffs, mouseover casting), we recommend using dedicated raid frame addons like Grid2, VuhDo, or ElvUI.\n* **Combat Restrictions:** Some frame movements and visibility changes are restricted during combat per Blizzard's secure frame policies.\n\n## 🤝 Contributing\n\nAbstractUI welcomes contributions! If you'd like to:\n* Report a bug\n* Suggest a feature\n* Submit code improvements\n\nPlease feel free to open an issue or pull request on the project repository.\n\n## 📝 License\n\nThis project is licensed under the GNU General Public License - see the [LICENSE.txt](LICENSE.txt) file for details.\n\n## 🙏 Credits\n\n* **Author:** Vengeance\n* **Libraries:** Ace3, LibSharedMedia-3.0, LibDataBroker-1.1, LibCompress\n* **Community:** Thanks to all users providing feedback and bug reports\n\n## 📞 Support\n\nFor support, questions, or feature requests:\n* Type `/aui` in-game to access settings\n* Check the in-game Tag Help window in unit frame options for text formatting\n* Review module tooltips in the options panel for detailed feature descriptions\n\n---\n\n*AbstractUI - A cleaner, modern interface for World of Warcraft: Midnight and beyond.*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvengeancestudio%2Fabstractui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvengeancestudio%2Fabstractui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvengeancestudio%2Fabstractui/lists"}