Module Developement ¶
The following guide describes the basic module structure and extended module features as well as important considerations regarding your own custom modules. Since HumHub is based on the Yii Application Framework you should at least be familiar with the basic concepts of this framework before writing your own code as:
Before starting with the development of your custom module, first consider the following module options:
- Can my module be enabled on user and/or space level?
- Does my module produce content?
- Does my module produce stream entries?
- Does my module add any sidebar snippets?
- Do I need to extend or change the default behaviour of core components?
- Do I need specific permissions for my module?
- Does my module create any notifications or activities?
- Should guest users have access to some parts of my module?
Furthermore you may have to consider the following issues:
- Module settings and configuration
- Append a module to a specific navigation
- Client side developement
- Schema Migrations and Integrity
- File handling
- Live UI updates
- Embedded Themes
Info: You may want to use the devtools Module to create a module skeleton.