Product Specs

This page provides a description as to how the Tulip product functional works and is designed. It is organized into the sections as described below.

  1. System Overview - These describe how Tulip can be configured at the account level, and provide necessary domain information for understanding Tulip concepts.

  2. Routes - Describe the specific views that present a user interface that is served by the admin console that let users CRUD (create, read, update and delete) specific types of data models, and relationships between models, given the appropriate access rights. The documentation of the routes effectively describes how one can use Tulip to created, edit and deploy Tulip solutions.

  3. Models - Describe the digital objects that make up a Tulip solution. Models and attributes that are wholly contained within another model, or are only important in the context of that model, are documented in a nested format with respect to that model.

  4. Components - Describe the complex and custom UI components that are used in multiple places throughout the Tulip platform. Simple components such as buttons, dropdowns, confirmation modals do not require documentation.

System Overview

IDNameDescription
S_PLAYERTulip PlayerThe downloadable application used to run Tulip apps
S_DESCRThe Tulip PlatformHigh level description of Tulip
S_DATAData ManagementOverview of the systems & technologies Tulip uses
S_AUTHEnterprise AuthenticationSpecification of enterprise authentication configurations using SAML or LDAP
S_AUDITApplication Audit TrailA description of how Tulip creates an audit trail.

Routes

IDNameDescription
R_USRSUsersAn interface for managing users
R_USRMMy AccountAn interface for managing one's own user profile
R_USPRUser ProfileAn interface for editing a user's profile and access rights
R_TBLSTablesAn interface for managing Tulip Tables
R_TBLETable EditorAn interface for editing the schema and content of a single Tulip Table.
R_STATStationAn interface for managing a station
R_SPLSSettings - Player SettingsAn interface for managing all player settings in the account
R_SDSPSettings - Display FormatsAn interface for managing the color palette for the account
R_SAPTSettings - Approval TypesAn interface for managing the account types available in the account
R_SACCSettings - AccountAn interface for managing account settings
R_MTYPSMachine TypesView a list of all machine types
R_MTYP_DETMachine Type DetailsView and configure a machine type
R_MSTSMachine StatesThe page for viewing a list of machine states
R_MLIBMachine LibraryView a list of all machines
R_MDTSMachine Data SourcesAn interface for managing machine data sources.
R_MDTRMachine Downtime ReasonsView a list of all downtime reasons
R_MDETMachine DetailsView and configure a machine
R_MATTMachine AttributesThe page for viewing a list of machine attributes
R_HISTActivity HistoryThe page for viewing a timeline of activity records
R_DASHDashboardAn interface for viewing and editing the Dashboard model
R_CONNSConnectorsThe page for managing connectors
R_CONNConnectorThe page for managing a single connector
R_CONN_FUNCConnector Function EditorThe page for editing a connector function
R_APPVApp VersionsAn interface for viewing and managing the versions for an app
R_APPPApp PermissionsAn interface for viewing and editing app permissions
R_APPOApp OverviewA view of app structure and metadata app
R_APPGApp GroupAn interface for managing an app group
R_APPEApp EditorAn interface for editing the layout and logic of an app
R_APPDApplication DashboardA page for seeing the dashboard of all analyses for an app
R_APPCApp CompletionsAn interface for viewing and exporing the completion data for anapp
R_APPAApp ApprovalsAn interface for managing approval assignment for an app
R_ANYSAnalysisA full page view of an analysis
R_ANYEAnalytics EditorAn interface for creating and editing analyses

Models

IDNameDescription
M_USERUserA digital record for a person granted some level of access to the Tulip System
M_USER_STATUSUser StatusThe current state of a user with respect to the system
M_USER_ROLEUser RoleA named collection of specific access rights that can be assigned to a user
M_USER_FIELDUser FieldA custom attribute applied to the user model
M_TRIGTriggersUser defined actions performed in response to events in the Tulip system.
M_TABLETableA user defined database that easily integrates with Tulip apps.
M_TABLE_RECORDTable RecordA row in a Tulip Table
M_TABLE_RECORD_FIELDTable Record FieldA property for each object in the table. Sometimes called a column.
M_STATStationA configuration that connects a specific Tulip player to machines and devices
M_STAGStation GroupA group of stations
M_MTYPMachine TypeA ruleset used to define the behavior of a Machine
M_MTRIGMachine TriggersIf/Then logic for defining the state of a machine and other machine fields.
M_MSTSMachine StateA category for the current status of a Machine
M_MDTSMachine Data SourceA connection to data generated by a physical machine
M_MDTRMachine Downtime ReasonA data type used to classify downtime events for Machines
M_MATTMachine AttributeA unit of data for mapping between raw data and a Machine
M_MACHMachineA digital twin of equipment that generates data.
M_MACH_MACTMachine Activity HistoryA running history of state details for a machine
M_EXPRESSIONExpressionsA configured code snippet that returns a calculated value based on certain inputs
M_DASHDashboardA column based layout for seeing a collection of analyses
M_CONNConnectorA configuration that specifies how Tulip connects to an external data source
M_CONN_HOSTConnector HostA runtime that hosts a connector
M_CONN_FUNCConnector FunctionA configured code snippet that allows apps to make requests to a connector data source
M_CONN_ENVConnector EnvironmentA configuration for how a connector accesses a data source given the app status.
M_CLRSColor PaletteAllows for defining a universal color palette that can be accessed in all apps.
M_APPROVALTYPEApproval TypeA specific approval that must be accepted for an app to be published
M_APPGROUPApp GroupNamed groupings of Apps, similar to folders in a file system.
M_APPApp (Application)The set of all versions of an a app.
M_APP_VERApp VersionsA specific version of an app
M_APP_VER_VARVariableDynamic value used in apps for real time control logic
M_APP_VER_STEPGROUPStep GroupA collection of steps and step groups app
M_APP_VER_STEPStepA named view in an app that can be routed to based on trigger logic and human actions
M_APP_VER_STEP_SIGNSignature StepA form step that includes an e-sig widget
M_APP_VER_STEP_REGRegular StepA step that renders a custom arrangement of widgets
M_APP_VER_STEP_REG_WIDGETWidgetA ui component that can be custom configured to be on an a step
M_APP_VER_STEP_HIST_WIDGETRecord History WidgetA UI component that can be used to view the history of a table record
M_APP_VER_STEP_FORMForm StepA step that renders input widgets in a form
M_APP_VER_STEP_FORM_INPUTForm InputAn input element for user data entry on a form step
M_APP_VER_RECDRecord PlaceholderA dynamic reference in an app to a table record
M_APP_VER_COMPApp Version CompletionA persistent log of App execution metrics and state.
M_APP_PERMApp PermissionA named role for assigning a user certain access rights to an app
M_APP_APPRApp ApprovalAn approval type assigned to an app, and the eligible approvers, required for a new version of an app to be published.
M_ANALYSISAnalysisA configuration specifying a way to retrive and represent data on a dashboard or in an app
M_ACTIVITYActivity RecordAn immutable record containing information about a change to master data

Components

IDNameDescription
C_ACTRActivity RecordA card for displaying an activity record