Development
How the screens of the Moodle 5.3 line are built, and how to rebuild and customise them.
The screens of this line are React 19 components written in TypeScript, mounted by Moodle’s own core/react_autoinit from core\output\react_component_renderable classes.
- Source and build: the source is in
js/esm/srcand the build that Moodle serves is committed injs/esm/build. Rebuild it withnpx grunt esmfrom the root of Moodle, and check the types withnpx tsc --project public/local/delegateaccount/tsconfig.json. - Styles: nested SCSS (
styles.scssandscss/), compiled intostyles.cssbynode tools/build-styles.mjs /path/to/moodle. - Customising a component: each component can be overridden with the swizzle mechanism of Moodle 5.3 (
js/esm/src/swizzle.json). - Forms: the forms that create and edit delegations stay Moodle forms.
DOC