MyBB Community Forums

Full Version: Addressing the Lack of Documentation
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
I've been using MyBB for roughly 4-6 years now, and through a protracted process trial and error I've managed to chart a mental map of its more advanced features.

However, over the last 2 years I've started playing around with plugin development and today I've finally reached beyond the point of frustration. There is a serious lack of documentation when it comes to the nuts and bolts of MyBB itself. The plugin development section in the manual is rudimentary at best and woefully inadequate at worst. Adding custom code to MyBB rapidly becomes a nightmare as the sheer scale of it makes troubleshooting a confusing and arduous affair.

I feel the following things would be an immensely helpful addition to the MyBB manual: a breakdown of the overall structure of MyBB, including a schematic of where each PHP file fits into the picture; explanations of how the core systems work, i.e.: how templates are rendered; and a list of global objects in each script or family of scripts and the fields defined for them.

MyBB's source is quite chimeric at this point and wading through it to understand components or references is a wasteful, headache-inducing time sink, and currently the sole alternative is supplicating to the community forums and praying for a response from somebody who knows what they're talking about.

Is there a list of global objects already defined somewhere I'm not aware of? If not, what can we do to start one?
There's a page with a list of hooks that might aid you when creating plugins if you didn't already know.
agreed that available documentation is inadequate.
And the guidance is rather scattered across different sections / topics ...

have a look at this reference of MyBB files, MyBB variables & functions .. etc

generally speaking,
we had quite useful documentation for MyBB 1.6.x
And MyBB 1.8.x documentation is incomplete & yet to be improved ..
The documentation is all available on GitHub, and any and all contributions are welcome. I agree it can definitely be improved, but doing so is a process that takes time and it can be difficult for experienced users and developers to know what needs to be added. If you think of something that needs better a explanation or isn't clear, feel free to create specific thread or create a GitHub issue for it so that somebody can find some time to work on it.
I have some of my own documentation here. It is aimed at some of the more advanced topics.
(2018-01-30, 12:16 AM)dragonexpert Wrote: [ -> ]I have some of my own documentation here. It is aimed at some of the more advanced topics.

nice work this is very useful thanks
(2018-01-27, 04:46 AM)jager287 Wrote: [ -> ]There is a serious lack of documentation when it comes to the nuts and bolts of MyBB itself.

How many debug messages have you added?

If your answer is zero, then that is your problem.

Debugging is absolutely essential in understanding how a software works. You can't do without it.

Documentation can only ever cover general concepts. It can tell you there is a hook system and give a few examples and that's about it. It should tell you how to debug instead.

Which hooks run on a given page, when doing a specific action? Forget the documentation, add a debug message to $plugins->run_hooks() directly and you know. Which variables available in this hook? Don't look for documentation, print it directly and you know. Debug messages will provide live information in ways no documentation could ever hope to achieve.

And machine generated documentation is unreadable. If you know what you're looking for, grep it yourself, and read the very fine source. And if you don't understand the source, add debug messages to it so you will see what happens and understand it anyway.

Without debugging, you are blind. That's true for any project, even the ones with extensive documentation, e.g. webbrowser addons are documented to death, but you still have to resort to the developer tools and console log and study actual code and examples to get anywhere with it.

Of course browsers have all these wonderful debugging tools built-in, that's usually not the case with PHP and you have to do it the old-fashioned way...
I would like to address the user-side docs....

One thing that is annoying for me is I basically had to make a thread for mods instructing them how to use MyBB mod tools and what was each tool (for new mods). For myself, i can read the forums to find out over time, but mods do not want to do this. They do not want to learn everything about MyBB, just enough to moderate.  You can send them to the docs
For one its 1.6  and there i no 1.8 option. Their first question is "where is the 1.8 version?". And that sounds really bad on MyBB. And secondly, its so general that it is almost useless. It doesnt go into much detail. Since a lot can be customized, examples in the docs with pre-defined settings would be nice.
Well, I guess documentation isn't as good but lets be honest, it is best than it could be if not by the few people having worked on it.
we welcome pull requests to add to our documentation if it's lacking in some manner:
Pages: 1 2