Skip to content
XetuuXetuu
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 }
}