All code related to a module is stored in a single directory inside the modules directory of your Zabbix frontend installation (for example, zabbix/ui/modules).
example_module_directory/ (required) manifest.json (required) Metadata and action definition. Module.php Module initialization and event handling. actions/ Action controller files. SomethingView.php SomethingCreate.php SomethingDelete.php data_export/ ExportAsXml.php ExportAsExcel.php views/ View files. example.something.view.php example.something.delete.php assets/ Any additional files to be used in views. Must be specified in manifest.json. js/ JavaScript files used in views. example.something.view.js.php css/ CSS files used in views. example.something.css image.png Images used in views. example.something.file Any file for using in views.
A sample module writing process consists of the following steps (where available, click on the file or folder name to view additional details about the step):
You can register and enable a module as soon as you create manifest.json file. Once the module is enabled, you can preview all changes made to module files immediately by refreshing Zabbix frontend.