Kinds of Bricks
The PixieBrix ecosystem is based on sharable/combinable components that we call "bricks". Each brick has a unique identifier and version
Foundations are re-usable extension points where you can attach functionality (e.g., a click handler, or a body renderer)
PixieBrix currently has support for the following foundations:
- Menu Item: a menu item or a button (
- Context Menu: a menu item available in the context menu when you right-click (
- Panel: a panel embedded on the page (
- Sidebar Panel: a panel in the PixieBrix sidebar panel (
- Trigger: run on an event, e..g, page load, element appearance, click, etc. (
Blocks are functions that you can wire together and attach to a foundation
- Readers: read information from a document. Current Support: HTML via JQuery, EmberJS, React, window variables. Each foundation can provide a default reader.
- Effects: take an input and perform a side effect. Examples: append a row to spreadsheet, send a message to Slack, open a new tab with a Google search.
- Transforms: take an input and produce an output. Example: call an API, run a jq transform, extract data using a regular expression
- Renderers: a transform that returns HTML or a ReactJS component, e.g., to render in a panel extension point. Examples: renderer markdown, a data table
You can also create composite blocks that behave as a single block. In YAML configuration files, these are indicated with
Re-usable resources and configuration that can also be used to authenticate requests to APIs. By creating a PixieBrix account, you can share service configurations with your team. Examples: an API credential, a Google Sheet
Collections of extension point + block combinations that a user can install together. Example: a collection of context menu definitions for running searches on different sites
A blueprint can also be automatically provisioned to a group(s) of users in the Admin Console (see
PixieBrix uses JSON Schema for specifying the shapes of inputs and outputs. In addition to serving as documentation, PixieBrix checks inputs to a brick against the schema.