1- [ ![ npm version] ( https://badge.fury.io/js/%40exabyte-io %2Fwode.js. svg )] ( https://badge.fury.io/js/%40exabyte-io %2Fwode.js )
1+ [ ![ npm version] ( https://badge.fury.io/js/%40mat3ra %2Fwode.svg )] ( https://badge.fury.io/js/%40mat3ra %2Fwode )
22[ ![ License: Apache] ( https://img.shields.io/badge/License-Apache-blue.svg )] ( https://www.apache.org/licenses/LICENSE-2.0 )
33
4- # wode.js
4+ # wode
55
6- WOrkflow DEfinitions in JavaScript - wode.js - houses entity definitions for use in the Mat3ra platform.
6+ WOrkflow DEfinitions - houses the definitions for:
77
8+ - ` Workflow ` - a workflow to be executed
9+ - ` Subworkflow ` - a logical collection of units of work defined by a unique ` Applidation ` , and ` Model `
10+ - ` Units ` - one of the following:
11+ - ` AssertionUnit ` - assert an expression
12+ - ` AssignmentUnit ` - assign a value
13+ - ` ConditionUnit ` - evaluate a condition
14+ - ` IOUnit ` - Read or write data
15+ - ` ExecutionUnit ` - execute an ` ADe ` ` Application `
16+ - ` MapUnit ` - create a dynamic number of units based on output of a previous unit
17+ - ` ReduceUnit ` - collect the results of a fanned out operation
18+
19+ Workflow configurations are processed at build time using ` build_workflows.js ` and compiled into
20+ a single JS file so that workflow configurations can be accessed in the browser runtime, not just
21+ in a NodeJS process.
22+
23+ The relevant data parameterizing supported entities is housed in the
24+ [ Standata] ( https://github.com/Exabyte-io/standata ) repository.
825
926## Installation
1027
11- For usage within a javascript project:
28+ For usage within a JavaScript project:
1229
1330``` bash
14- npm install @exabyte-io /wode.js
31+ npm install @mat3ra /wode
1532```
1633
1734For development:
1835
1936``` bash
20- git clone https://github.com/Exabyte-io/wode.js. git
37+ git clone https://github.com/Exabyte-io/wode.git
2138```
2239
2340
24- ## Contribution
41+ ## Contributions
2542
2643This repository is an [ open-source] ( LICENSE.md ) work-in-progress and we welcome contributions.
2744
@@ -46,7 +63,7 @@ npm run transpile
4663npm run test
4764```
4865
49- ## Using Linter
66+ ### Using Linter
5067
5168Linter setup will prevent committing files that don't adhere to the code standard. It will
5269attempt to fix what it can automatically prior to the commit in order to reduce diff noise. This can lead to "unexpected" behavior where a
@@ -80,30 +97,9 @@ In which case, you may need to then add the linter edits to your staging, which
8097file back to identical with the base branch, resulting in no staged changes whatsoever.
8198
8299
83- WoDe
84- ====
85-
86- The` WoDe ` package synthesizes other entity definition (` De ` ) libraries
87- in the Mat3ra workflow ecosystem and implements the following entities:
88-
89- - ` Workflow ` - a workflow to be executed on the Mat3ra platform
90- - ` Subworkflow ` - a logical collection of units of work defined by a unique ` Applidation `
91- - ` Units ` - one of the following:
92- - ` AssertionUnit ` - assert an expression
93- - ` AssignmentUnit ` - assign a value
94- - ` ConditionUnit ` - evaluate a condition
95- - ` IOUnit ` - Read or write data
96- - ` ExecutionUnit ` - execute an ` ADe ` ` Application `
97- - ` MapUnit ` - create a dynamic number of units based on output of a previous unit
98- - ` ReduceUnit ` - collect the results of a fanned out operation
99-
100- Workflow configurations are processed at build time using ` build_workflows.js ` and compiled into
101- a single JS file so that workflow configurations can be accessed in the browser runtime, not just
102- in a NodeJS process.
103-
100+ ## Other
104101
105- Workflow Spec
106- -------------
102+ ### Workflow Spec
107103
108104Workflows defined as configuration conform to the following specification:
109105
@@ -152,8 +148,7 @@ Workflows defined as configuration conform to the following specification:
152148 - ` [value]: {{constructorValue}}: Any ` - value for a given constructor parameter
153149
154150
155- Workflow Creation
156- -----------------
151+ ### Workflow Creation
157152
158153The Workflow instances associated with the workflow configurations are built by
159154the ` createWorkflows ` function traversing all three levels (workflow, subworkflow, unit):
0 commit comments