Skip to content

oslabs-beta/expressbridge

Repository files navigation

ExpressBridge v1.0

A tiny microservice framework for Nodejs. 🚀

ExpressBridge is a free and open source microservice framework for Nodejs-based microservices. It is appropriate for use in any microservice or FaaS environment and across all cloud vendors.

Gatsby is released under the MIT license. GitHub Workflow Status

What's in this document

  • Overview
  • Quickstart Guide
  • Learning ExpressBridge
  • Sample Project
  • Release Notes
  • Documentation Site
  • How to Contribute

Overview: ExpressBridge Fundamentals

ExpressBridge provides a fluid, easy to use API that enables developers to stand up new microservices that handle, process, and dispatch messages with ease. The API surface is small and straightforward. Consider the following example:

const handler = (message) => {
    const expressBridge = new ExpressBridge({
        alwaysRunHooks: true,
    });

    expressBridge.pre((message) => {
        // ... pre-process message
    });

    expressBridge.post((message) => {
        // ... post-process message
    });

    // respond to some generic AWS events
    const awsEventHandler = (message) => { /* ... write to db, log event, dispatch message, etc */ }
    expressBridge.use({ source: 'aws.*' }, awsEventHandler, (err) => { console.log(err) }) 

    expressBridge.process(message);
}

The above example represents the entire API surface of the framework in its simplest implementation. However, ExpressBridge is highly configurable so as to be suitable for a wide range of scenarios. Understanding this configurability will enable you to fully leverage the power of this framework.