Module Metadata
Where it lives
JSON Pointer:/moduleMetadata
JSONPath:$.moduleMetadata
Parent: Root of the metadata file
Overviewβ
When creating a new module in SolidX, you're defining a core building block of your application.
A module groups together related models and functionality under a unified domain.
π For a conceptual overview of what a module is, see Module Management Documentation.
Example: Fees Portal Moduleβ
Below is a module metadata example for a "Fees Portal" module that tracks fee collection requests.
Module Schema
{
"moduleMetadata": {
"name": "fees-portal",
"displayName": "Fees Portal",
"description": "Keep track of fees collections requests",
"defaultDataSource": "default",
"menuIconUrl": null,
"menuSequenceNumber": 2,
"isSystem": false,
... // Model and Field metadata goes here
},
... // Other metadata components go here
}
Info
The defaultDataSource is set to "default" here, which refers to the default data source configured in your SolidX instance. This is the TypeORM data source configured in your app-default.database.ts in your project solid-api src folder.
Module Metadata Attributesβ
name (string, required, unique)β
Unique identifier for the module (lowercase, underscores/dashes).
Used internally by the system and in the API (e.g., "sales").
Default: N/A
displayName (string, required)β
Human-readable name shown in the admin panelβs navigation and UI
(e.g., "Sales Management").
Default: N/A
description (string, optional)β
Short summary of what the module represents or its purpose.
Default: N/A
defaultDataSource (string, optional)β
Default data source (from a predefined list) used to read/write data.
Default: N/A
menuSequenceNumber (number, optional)β
Order in which the module appears in the sidebar/navigation menu
(lower numbers appear earlier).
Default: N/A
isSystem (boolean, required)β
Marks this as a system module (cannot be deleted).
Default: false
menuIconUrl (string, optional)β
Path/URL of an icon to represent the module in the navigation pane.
Default: N/A