Plugin-Documentation was inspired by the server I help to administrate. We found that many new members needed help with most of the plugins we had installed. Generally, plugins had inconsistent in-game documentation. So, servers (like mine) have to be creative, creating some sort of tutorial. This then becomes really hard to manage with all the plugin additions and updates. So, why not create an easily-accessible, centralized repository for plugin information? With one simple command, the plugin will give you all you need to know about a plugin. This plugin has no hard-coded documentation, so all plugin documentation is always up-to-date (if the repo is, at least).
How it Works
After using any of the commands (with the exception of /dump), the plugin will then read from various files in this plugin's github repository. When using /plugin-list or /contributors, it'll generate a list from the respective PLUGINS.md and CONTRIBUTORS.md. When using /plugin-help, it'll look for the given plugin's index.json which gives the plugin 'directions' in order to find all the necessary info. This plugin also has a feature which allows for caching information from this repo internally. This will speed up the usage of commands (with the exception of the first time it is executed). However this is can be a little more taxing on RAM usage.
- /contributors (perm node: PluginDocumentation.contributors): Prints a list of contributors to the project.
- /dump (perm node: PluginDocumentation.dump): Dumps all currently cached data, lowering RAM usage (albeit temporarily)
- /plugin-list (perm node: PluginDocumentation.plugin-list): Prints a list of plugins supported.
- /plugin-help (perm node: PluginDocumentation.plugin-help): Attempts to fetch the documentation for the given plugin
- /book-converter (perm node: PluginDocumentation.book-converter): Attempts to paste the contents of the book in your hand to pastebin. Useful for transferring in-game documentation to this project. WARNING: May be removed in the future.
About the Config Options
InternalCaching (default: true): Determines whether the plugin should actively cache data (NOT recommended for servers with limited RAM). ShowLinks (default: true): Determines whether the plugin will display links if any given plugin documentation book has links. Debug (default: false): Determines whether the plugin will print the stack trace if a command encounters an error (For advanced users or sending bug reports only).
For the most up-to-date changelog, visit here
- None :D
While the API is still incomplete, there is one nonetheless! Download the JavaDocs here (at the corresponding release) or view it at http://austinv11.github.io/PluginDocumentationDocs/
This project is aimed to be community-driven. Please submit some documentation! There are a few ways to do it. Here are the methods I prefer you use:
- Make a pull-request on the github repository containing fully-formatted contributions
- Submit a ticket containing any contributions
- PM me any contributions
If you help in any way, I'll add you to the Contributors list!
My Vision for this Project
I will consider this project "complete" once there is a simple API for plugins to hook into, there is a really simple and easy way to contribute to the documentation and that most "big" plugins are supported.
This Project's Open-Source!
Check it out on Github!
Please post suggestions and comments and post issues on my issue-tracker!