Skip to main content

Work with Data

Learn how to work with data in Powerhouse.

Configure a drive

A drive in Powerhouse is a container for documents and data. It's a place where you can organize and store your documents and share them with others. This guide walks you through configuring and managing drives in your Powerhouse environment.

Using the API

Introduction to Switchboard

Using subgraphs

Create and customize a subgraph, using the to-do list project as an example. This starts with the basics and adds more complex features as it goes.

Building a processor

Processors are components that receive document operations from the reactor and perform side effects. While specialized processor types like relational database processors exist, you can build a plain processor by implementing the IProcessor interface directly.

Processor best practices

This guide covers advanced patterns for processors that need to mutate documents or query indexed data. It builds on the concepts from Building a Processor — read that first if you haven't already.

Relational database processor

In this chapter you'll implement a Todo-List relational database processor. This processor receives operations from the reactor and can use resultingState (from the operation context) or data from the operations themselves to populate a database.

Hosting HTTP routes

A package can serve HTTP endpoints of its own on the reactor, alongside the GraphQL API. You register routes in code against a http scope the host hands your package, and the host removes them again when the package unloads.

Receiving webhooks

A webhook endpoint is how a third-party provider (GitHub, Stripe, Slack, a payment gateway) delivers an event into your package. You register one endpoint family for the package, mint one endpoint per logical key, and hand the resulting URL to the provider. The reactor verifies signatures, absorbs redeliveries and answers the provider's probe before your code sees a delivery.

Building a piece

A piece is a connector a workflow can call: a named bundle of actions (things a step does) and triggers (things that start a run). If you haven't met workflows yet, read What are workflows? first — this tutorial assumes you know what a step and a block are.

Authoring workflows outside Connect

Workflow Studio is how a person builds a workflow. This page builds one from