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.