What is Caseflow?
Caseflow is the object-data layer in Nobly Insight used for case and process-driven business data. It is organized around:- Applications — high-level functional domains
- Classes — object types inside each application
- Attributes — fields on each class, including relations
- Objects — individual records
- Filters — reusable query definitions used in list views
- Templates — UI definitions for create, update, and preview experiences
User surfaces
Caseflow is exposed through four major user surfaces:Landing page
Application selector, filter bar tree, search parameter controls, and result table with advanced interactions.
Object page
Full object rendering through an Update template.
Create page
Class-based object creation through a Create template.
Search preview pane
Uses a Preview Pane template when available. Falls back to a simple open-object action if not configured.
Core behavior model
Caseflow behaves as a metadata-driven system:- Class and attribute metadata drives type behavior, search resolution, and validation
- Templates define layout and interaction
- Actions define side effects and automation
- The script engine extends behavior beyond declarative actions
Runtime architecture
The runtime is composed of five major layers:Caseflow Object Context
Caseflow Object Context
The state store for primary, related, search-loaded, and create-mode objects. It provides:
- Name-to-ID resolution utilities
- Save, create, relation fetch, aliasing, and validation orchestration
Template Engine
Template Engine
Parses HTML-like templates and supports:
- Variables, conditionals, loops, and custom components
- Template variable resolution from a computed scope
Component Registry
Component Registry
Maps template component names to their React implementations. Includes Caseflow-specific components and shared utility components.See Form components and Data and action components for the full reference.
Action Engine
Action Engine
Runs on event hooks (
onChanged, onCreated, save hooks) and supports conditions, runtime variables, query refresh, create/set actions, and script calls.See Actions and scripting for full details.Script Engine Integration
Script Engine Integration
Provides three integration paths:
- Explicit button-based execution (
ScriptButton) - Action-chain execution (
callScriptaction) - Field-triggered autofill scripts
Data and UI flow
At a high level, the runtime follows this sequence:- Load object and class metadata
- Select template by class and type (or explicit template name)
- Build runtime scope — attributes, stock values, user info, aliases
- Render template into components
- Components read and write shared object context state
- Save operations persist only valid, non-transient attribute updates
