Blizzard did a great job designing the user interface for their game, World of Warcraft. The interface is clean and non-intrusive to the game experience and manages to still be very powerful and handy. The best part about it is that anyone with XML and Lua knowledge can add to, and modify, the interface. Everything from adding a clock to changing every part of the interface you see on the screen.
Cosmos is one such modifcation to the WoW interface. It’s the heavy-weight mod and is crafted from many smaller AddOns and mods. When I first started using it, it felt unorganized and clunky. Some of the features, though, were so useful that I felt I had no choice. Either go without or take the good with the bad. As time went on, I learned more about what AddOns really were and how Cosmos was not designed strictly as one. Proper AddOn design resulted in code that did not require manipulating Blizzards code. This design concept of the AddOn being stand-alone also meant that when Blizzard updated certain interface files, your AddOn code would not break. It also keeps one AddOn from interfering with another AddOn. All good ideas that Cosmos clearly broke. And that is why, on principle, I have stopped using Cosmos and started writing my own replcement for the one feature I could not un-integrate from it.
Cosmos also caused my client to crash when exiting the game. No idea why that happened.