Modules are the technical building blocks used in the Workspace. Each module declares the resource type it accepts and the type it produces.
Logical resources
Bethemesh distinguishes between text and tabular data, among other resource types. Future modules may introduce image, document, audio, or video resources.
Automatic compatibility
After each step, the engine knows which output type is available. It can therefore suggest only modules that are compatible with the next position in the pipeline.
Why is a module unavailable?
It may require a different resource, a source step earlier in the pipeline, or a particular column format.
Good to know: the site’s public categories help people find tools. Workspace resources are used to check technical compatibility. These classifications are intentionally separate.
Read the type chain
A text step cannot accept a table directly until an explicit conversion has produced text, and the reverse is also true. Making these transitions visible prevents implicit conversions and ambiguous results. When a module is missing, first inspect the output declared by the preceding step.
Example of a typed chain
A CSV source produces a tabular resource. A column-selection module accepts that table and produces another one, which a CSV export can then consume. A Markdown formatter expects text, so it should remain unavailable until a table-to-text conversion has been added.
Every module should declare its input, output, and preconditions, such as the presence of a column, a particular encoding, or a minimum structure. An explicit conversion is preferable to a silent adaptation because it remains visible in the recipe and can be inspected.
If a module is missing, check the previous output, required settings, and implementation availability in that order. Adding a conversion at random may make the chain executable while still producing a semantically incorrect result.