Developing Cyberismo modules
Introduction
A Cyberismo module is a reusable collection of templates, card types, workflows, field types, link types, reports and logic program calculations. When a user imports a module as a dependency to their Cyberismo project, a read-only copy of the module is included in the project directory structure.
The most common module is the base module, which defines some commonly used basic card types and their workflows and field types for custom fields. Before designing your own modules, you should familiarise yourself with the base module so that you’ll be able to avoid defining new resources, when an existing resource in the base module could do the job.
Technically, a module is a Cyberismo project just like any other project, but it is just intended to be reused in other projects.
How to design a Cyberismo module
To develop a new Cyberismo module, follow these steps:
-
Create a new Cyberismo project. See Creating a new project tutorial for more information
-
Import the base module. Avoid defining redudant configurations to the base module in your new module, unless necessary. The steps to import the base module are explained in the Creating a new project tutorial.
-
If you need new workflows, then create them first. See Workflows for more information. Notice that you can use the workflows from the base module, if they apply to your use case.
-
If you need new types of custom fields, then create and design field types. See Fields and field types for more information. Notice that you can use the custom fields from the base module, if they apply to your use case.
-
If you need new card types, then create and design card types. A card type selects one of the available workflows and a set of custom fields. See Card types for more information.
-
If you need new link types, then create and design link types. See Link types for more information.
-
Design any new templates. See Templates for more information.
-
Develop any new module-specific logic programs. See Queries and reasoning for more information.
-
Design any new reports