Simian Form Builder
The Simian Form Builder can be used to build Simian web apps or components in a graphical environment, reducing the amount of code to be written.
Simian web apps created with the builder can be used without having the builder installed. They do need Simian GUI to be installed to work.
Currently the Simian Form Builder only runs in Python, although it can be used to create Matlab apps and components.
Installation
To install the builder, make sure you have simian-gui
and simian-local
installed and running with a valid license. Then, in the same environment, run:
pip install --extra-index-url https://pypiserver.monkeyproofsolutions.nl/simple/ simian-builder
Getting started
Open the Simian Form Builder window
python -m simian.builder
The Builder opens and shows the default layout. The menu shows two buttons: one to create a new module and one to load an existing form definition file. Below that, the Form.io builder is shown.
Click the New... button to start.
The options for creating a new module appear:
- Language: Create a Python or Matlab module.
- Mode: Create a web app or a reusable composed component.
- Workspace folder: The folder that needs to be on the path to find your module.
- Module name / Package name: The fully quailified name of the module to create.
When Mode is App:
- Window title: The title to show on the Pywebview / uihtml window.
- Navbar title: The title to show on the navigation bar.
- Navbar subtitle: The subtitle to shown on the navigation bar.
- Navbar logo: The logo to shown on the navigation bar.
- Enable change detection: When selected, shows an indicator badge whenever the user makes changes to the form.
When Mode is Composed component:
- Class name: the name of the composed component class.
In this example we will create a Python web app to illustrate the working of the Builder. The steps for the other options are similar.
Specify the Workspace folder and Module name.
Click Create code to generate the module code.
This generates:
- A form definition file (
.json
). - A Python module that loads the form definition file. The module can be run as a script to open the app locally.
- A
css
folder containing the modules style sheet.
Drag and drop components to build a form.
Edit component settings to change behavior and appearance.
Click the Save button to save the updated form.
For Python web apps, a preview can be opened in a new Python process.
Noteworthy settings
-
On the
API
tab the fieldProperty Name
contains the component key. It is automatically generated based on the label, but can be changed here. -
The settings of the Component classes are equivalent to the settings that can be set in the builder.
Next steps
Please consider reading the following documentation pages to further develop your application.