Introduction
Anyone can make XOOPS modules and with this document hopefully we can help educate how to go about doing so. Please make sure you at least skim over all portions of this Wiki so you don't miss anything.
It may seem overwhelming at first but if you know PHP and HTML you are already well on your way. It is helpful to also learn things about PHP such as Frameworks, Templates, and Patterns. Jquery is the Ajax library installed with newer XOOPS versions to perform Javascript functions. Xoops also heavily makes use of the SMARTY templating system. It is also a plus to be proficient in the latest HTML and CSS. This may seem like a lot but if you have some basic knowledge of PHP and HTML you know what you need to get started.
If you are going to be releasing your module to the public you will want to make sure you read up on Programming practices as this will help you make code that is simpler to be read by other programmers.
It is also important to document your code as you go along as well as create a user guide or help manual. Documenting the code will help upgrade the module months or years later and a user manual will help users to be able to use the module.
Documentation
As a user nothing is more frustrating than to have a module that you have no clue how to use or what it actually does. Simple documentation is better then none at all.
Most modules will need to be updated at some point so it is important to document the code as you go. You never know when or who is going to be updating the module and it can be very time consuming to figure out what a certain function or class is doing.
If you make sure you comment every function, class and similar coding not only will this make it easier for someone reading the code directly but will also help code documenting programs such as Doxygen create a much more useful document of the code.
Back to Module Development Guide











![[Main Page]](/modules/mediawiki/images/mediawiki.png)


