[img] tag
Developed by » Thatsmusic99
« OVERVIEW »
ConfigurationMaster is one of the first libraries - possibly even the first - to provide actual and efficient comment support for plugins to use.
Beforehand, plugin developers would resort to either using Bukkit's API system for configuration files or writing up the files, copying them from the resources folder into the plugin data folders. However, both have flaws; Bukkit's API system has no comment support, and the adding of new options would jumble up the order of where options appear, making pointing out options had to do, whilst copying files has an even bigger problem looming - how do you update a config file with new options effectively including all options and comments, other than having the end-user do that - which may be tedious and annoying for them?
However, ConfigurationMaster solves all of these and hopes to make them problems of the past.
« FEATURES »
  • Commenting on specific options, or even just about anywhere in the file.
  • Separating options into specific sections.
  • Forcing an order upon options so that new options can be added in the middle, at the bottom or even at the top of the configuration.
  • Add example options/configuration sections which don't reappear unless a new file is generated.
  • Temporarily storing a file which has bad syntax as a separate configuration file.
  • A customisable title, subtitle, description and set of external links to include in the header.
  • The ability to move options around, especially when creating a new configuration format.
  • An option to add a lenient section, where users can add whatever they like inside the section.
  • Easily allows multiple config files with their own names.
  • Relies on a minimal amount of Bukkit's API, making compatibility hardly a concern - whilst it is predicted to work on the majority of versions without requiring updates, the listed versions above confirm their compatibility with CM.
« DEVELOPERS »

If you're a developer looking to use ConfigurationMaster, useful links include:
Github Wiki - A full guide on how to use CM to the best of its ability.
Javadocs - A complete overview of the library's methods.
« PLUGINS »
Using ConfigurationMaster in your plugin? Send me a DM with the plugin that's implemented the library and the version it's effective on!
Advanced Teleport (Niestrat99 and Thatsmusic99) » Effective from v5.4-SNAPSHOT-1. AdvancedTeleport is the first plugin to use CM and acted as the guinea pig in early testing. It helped catch out a lot of bugs that otherwise wouldn't have been found.
SimplePets (brainsynder and Thatsmusic99) » Effective from Experimental Build #44. Doesn't officially use ConfigurationMaster, but implemented some of the early technology into its own library, BSLib.
« SUPPORT »
I'm more than happy to provide support for those who don't quite understand how to use the library or have a bug to report. I am more than happy to answer questions in the discussion thread for CM, but I often find queries easier and quicker to answer on our Discord server. If you have a bug to report though, please open an issue on Github.
And for everyone's sake, here's an example of how the library has been used in AT:

  EXAMPLE: