Developers
Extend Xetuu without forking it.
Modules declare themselves with a manifest. The App Store checks dependencies, seeds permissions and adds the module to the sidebar.
Module manifest
Every module, built-in or community, implements the same manifest contract.
- Modules communicate through events and queued jobs, never by calling each other directly.
- Every endpoint is guarded by a named permission such as accounting.invoices.post.
- Money fields use fixed-precision decimals, with a currency code.
- Custom data can be modelled without code in Studio.
xetuu.manifest.json (example)
{
"slug": "accounting",
"name": "Accounting",
"version": "1.0.0",
"category": "FINANCE",
"isCore": false,
"dependencies": [],
"permissions": ["accounting.*.*"],
"menuConfig": { "label": "Accounting", "icon": "Landmark", "path": "/accounting", "sortOrder": 1 }
}