Структура модуля

Каждый модуль представляет собой папку (помещённую в папку 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
js/ JavaScript files used in views.
example.something.view.js.php
partials/ View partial files.
example.something.reusable.php
js/ JavaScript files used in partials.
example.something.reusable.js.php

Как можно заметить, единственным обязательным файлом в директории пользовательских модулей является manifest.json. Модуль не будет регистрироваться без этого файла. Module.php отвечает за регистрацию пунктов меню и обработку событий, таких как "onBeforeAction" и "onTerminate". Директории actions (действия), views (представления) и partials (составляющие) содержат код PHP и JavaScript, необходимый для действий модуля.