Reference
Contents
List of plugins
Plugins extend Tymly with functionally-related State Classes, Commands and Services etc.
| Plugin | Description |
|---|---|
| tymly | The Tymly package itself has a built-in plugin which provides low-level components to help get the party started |
| alerts | Adds some alerting options to the Tymly framework |
| etl | A collection of states for helping with Extract, Transform and Load tasks. |
| express | Exposes the Tymly framework via an Express.js web app. |
| forms | Adds some form capabilities to Tymly |
| pg | Replace Tymly's out-the-box memory storage with PostgreSQL |
| rankings | Plugin which handles ranking of data |
| solr | Plugin which handles interaction with Apache Solr |
List of State Resources
Task states can refer to resources, here is a list of all the included State Resources….
| State Class | Description | Plugin |
|---|---|---|
| exportingCsvDeltaFile | Outputs change-only-update CSV files (or “delta” files) that contain all the necessary actions required to re-synchronize rows in a cloned table - just a thin wrapper over pg-delta-file | pg |
| findingById | Fetches a single document by its primary key values from storage and adds to a Tymly context | tymly |
| findingOne | Finds one document from storage | tymly |
| formFilling | Indicates which form a human needs to interact with - and waits until a response is received | forms |
| importingCsvFiles | Takes a specifically-named directory structure of CSV files and conjures bulk insert, update and delete statements and applies them to a PostgreSQL database - just a thin wrapper over Supercopy | pg |
| logging | Logs to the console via a template | tymly |
| processingCsvFiles | Smash CSV files into more manageable files based on column values - just a thin wrapper over Smithereens | etl |
| processingXmlFiles | Takes an XML file and converts it to CSV | etl |
| refreshRanking | Regenerates a database view of ranked data | rankings |
| sendingEmail | For sending an emails - just a thin wrapper over Nodemailer | alerts |
| synchronizingTable | Takes the contents of one PostgreSQL table, applies a transformation function to each row and ensures a target table is kept in sync - just a thin wrapper over pg-telepods | pg |
| upserting | Perists a document to storage | tymly |
List of commands
Commands allow states to be configured to access dynamic runtime values (e.g. from the Tymly context, environment variable etc.)
| Command | Description | Plugin |
|---|---|---|
| env | Allows a state to refer to an environment variable | tymly |
| sprintf | Derive a runtime value using a sprintf string template | tymly |
| value | Get a value from the Tymly's context | tymly |
List of services
After the boot-up process, Tymly will return many ready-to-use services. Most services are internal things (like caches) and are probably only of interest if you’re writing your own plugins. However, some services (like server) offer key Tymly functionality.
| Service | Description | Plugin |
|---|---|---|
| auth | Provides JWT-based authentication capabilities | express |
| blueprintDocs | Allows tracking of documents created via blueprints, so they don't get reverted when Tymly restarts | tymly |
| caches | Adds lru-cache-based caching to Tymly. Note defaults will be used if no caches configuration is provided. |
tymly |
| commands | Service to support blueprint commands | tymly |
| Integrates Tymly with Nodemailer to offer email-sending capabilities | alerts | |
| expression | Provides safe, Esprima-based expression evaluation | tymly |
| forms | Exposes UI configuration (as supplied via blueprints in Schema Form format) | forms |
| functions | Adds ability to run custom logic as defined in a blueprint | tymly |
| inventory | Collates component information by scanning plugins. The results can then be used by tooling and documentation-generators | tymly |
| rankings | Adds a ranking engine | rankings |
| rbac | Provides JWT-based authentication capabilities | tymly |
| registry | Provides a mechanism for states to refer to site-specific values | tymly |
| server | Provides a CORS-enabled Express.js server. Includes serving of static assets as supplied via Bluepints | express |
| solr | Adds Solr support | solr |
| statebox | Runs state machines defined in Amazon States Language | tymly |
| stateboxApi | Exposes the core Tymly abilities (start, get, update and cancel) over a JWT-secured REST API | express |
| storage | This is the default in-memory storage service that ships with Tymly. Useful for testing and not much else. | tymly |
| storage | Replaces the default in-memory storage solution with a MongoDB-backed alternative | pg |
| tags | Provides a generic mechanism to help tag/classify search results, tasks, forms etc. | tymly |
| temp | Helps configure and manage a temporary folder for Tymly to use | tymly |
| users | Adds user-management capabilities to Tymly (e.g. authorization checks, what flows/forms a user is entitled to instigate etc.) | tymly |