Pluggable Widgets Generator
Yeoman generator for Mendix Pluggable Widgets.
About
This generator uses the Yeoman scaffolding tool to let you quickly create a Mendix Pluggable Widget.
Installation
-
Install node.js (version >= 12).
-
Install Yeoman:
npm install -g yo
-
Install Pluggable Widgets Generator:
npm install -g @mendix/generator-widget
Scaffold a widget project
-
Generate your new project inside an empty folder:
yo @mendix/widget
or automatically create the folder using:
yo @mendix/widget MyWidgetName
Note that
MyWidgetName
can consist of space characters as well. -
Provide the following information about your widget project (press if you want to skip and use the default values):
- Widget name
- Description
- Organization
- Copyright
- License
- Version
- Author
- Mendix project path
- Programming language
- Platform
- Template
- Add unit tests
- Add end-to-end tests
Template
Full boilerplate
The full widget boilerplate is a fully developed and tested Mendix React widget that shows a value as a badge or a color label (just available for web/responsive platforms). It has the following features:
- Display as a badge or a color label
- Attach actions to the onClick event
- Set static data text when the dynamic data is not specified
Empty widget
The empty template is a Mendix React hello world widget recommended for more experienced developers.
Add unit tests
If Yes
is selected, unit tests are included to ensure individual units of the component are tested to determine whether they are fit for use. The default value is No
.
Add end-to-end tests
If Yes
is selected, end-to-end tests are included to ensure that the integrated components of an application function as expected. The default value is No
.
Note: Both Unit
and End-to-end
tests apply only to the Full Boilerplate. End-to-end
is exclusive for web and PWA apps.
The tool will then create copied files, and run npm install
to install development dependencies.
Using the task runner
The widget generator will include the necessary files and tasks to your package.json for running the tasks over the Pluggable Widgets Tools.
If necessary you can run the tasks using the commands:
npm start
npm run build
npm run release
Note
-
To build and watch for source code changes while developing, run the Mendix project located at the specified
Mendix project path
and run:npm start
-
If you are running the generator through multiple operating systems (e.g. running a virtualized OS with Parallels on MacOS or any other virtualization software), make sure you have the right privileges and use the same OS for generation and file manipulation.
-
If you want to test locally your changes to the Generator Widget, simply link the package running
npm link
inside thepackages/generator-widget/
folder and then you will be able to runyo widget SomeWidgetName
Issues
Issues can be reported on Github.