Product surfaces
Where custom code can be used
Approval forms
Respect readonly mode, keep decisions clear, and avoid hidden dependencies that block approvers.
- Searchable supplier or customer pickers
- Approval decision panels and related record summaries
- Compliance checklists, timelines, and calculated review sections
Data list forms
Bind strongly to record fields and safely load existing values during edit mode.
- Multi-entry inputs and dependent selectors
- Configurable tables and structured JSON output
- Attachment or photo capture helpers
Dashboard pages
Read dashboard variables and temp variables carefully, and verify save behavior separately from form field persistence.
- KPI cards, trend modules, and distribution charts
- Exception panels and activity timelines
- Paginated summary tables
Runtime access
What custom code can read and use
- Variables
- Configuration values, selected filters, list identifiers, JSON data, or values calculated elsewhere in the app.
- Temp variables
- Dashboard or interactive page state such as selected item IDs, filter values, temporary JSON payloads, and output targets.
- Complex variables
- Arrays, objects, nested configuration, dashboard data, and reusable JSON payloads that should be parsed defensively.
- List fields
- Current form values from fieldsValues or context.getFieldValue(), including primitives, objects, arrays, lookups, or serialized JSON.
- yeeSDKClient
- The Yeeflow platform client exposed at context.modules.yeeSDKClient, commonly used for lists.queryItems(...) and data-list powered controls.
Expression parameters can arrive as a primitive value, object, array, or the current value of a selected variable. Reusable controls should normalize before rendering, querying, or saving.
Capability model
Custom code control vs custom code action
Custom code control
- Renders UI in a form or dashboard
- Can accept input, display content, query lists, and save output
- Best for lookup pickers, KPI modules, custom tables, rich text editors, approval summaries, and photo capture
Custom code action
- Runs process logic without a reusable visual surface
- Best for data transformation, validation, workflow logic, or service calls
- Should be documented separately because runtime expectations differ from controls
Delivery value
Why custom code matters
Good custom code helps Yeeflow teams deliver process experiences that are more specific, guided, and reusable than one-off configuration alone.
- Reduce manual entry errors
- Guide users through complex approval or data-entry steps
- Connect forms with master data
- Provide dashboard experiences tailored to each business process
- Standardize repeated UI patterns across apps
- Support partners and delivery teams with documented, reusable components
Reusable future
Reusable template direction
The long-term direction is a qualified reusable custom code template library. Each template should include a complete Yeeflow custom code file, a user guide, and optional example configuration notes.
Template library
Explore reusable Custom Code templates
Browse production-ready Custom Code template examples for structured inputs, approval experiences, dashboards, and operational work surfaces.