What is an Exoskeleton?

Exoskeletons are components that leverages the function of other components somehow. Lots of components do this, but exoskeletons do it in a special way. The exoskeleton acts as a wrapper component taking on some or all of the properties of its child component(s). A visual helps this make more sense. 

The DataDriver component drives a duffle of data through a component that otherwise was written to only handle single values. It's called an Exoskeleton because you drag the component, PubMedSearch, into DataDriver and DataDriver takes on all of the inputs and adds a few of its own. Then you just wire up the one component.  

There are two kinds of exoskeleton components: 

  • Layout
  • Algorithmic

Both kinds help make components more reusable and general, and in the process they reduce the amount of wiring you have to do. 

Exaptive doesn't provide support users creating their own exoskeleton components, although we don't stop you either. Greater support for how to do it will come later. For now, let's get into how to use the exoskeleton components available.

Layout Exoskeletons

Layout Exoskeletons are a work in progress. We'll update this when they're ready for action!

Algorithmic Exoskeletons 

Algorithmic exoskeletons add functionality to a component that accesses data. But they add the functionality without having to change the component or mess with wiring and rewiring for different use-cases. 

Say you want to query an API and cache some data you get from it. With a caching exoskeleton component, the data access component that calls the API can be brought into the caching component and the become one data access and caching component. No wiring of two components, necessary. Without the exoskeleton functionality, you'd have to wire the data access component to the caching component...and rewire it each time you used it differently. With the exoskeleton and its child component combined, it's one generic data access and caching component ready for use and reuse.

Some Algorithmic Exoskeletons To Try Out:

NOTE: Making an Exoskeleton component is an advanced task. We don't have documentation on it in Building Components. If you are comfortable building Components and have an idea for an Exoskeleton, try the discussion forum for help and contact us if you're stumped.