Skip to content

blinkafrica/octobus

Repository files navigation

Blink Octobus

Github Actions code style: prettier

About

Octobus is a library that provides utility functions for building microservices such as:

  • Interservice communication (via REST)
  • Subscribing to events from RabbitMQ queues.
  • Logging
  • Authentication

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development purposes.

Prerequisites

The following are required for the best use of Octobus:

  • Package Dependencies
    • NodeJs (v14 or higher)
    • Yarn
    • Typescript (v4.4 or higher)
  • A basic understanding of nodejs and typescript with a good knowledge of nestjs would be an added advantage.

Installation

To install Octobus, run the following command in your terminal

yarn install --save @blinkclaud/octobus reflect-metadata

To upgrade to a specific version run this command

yarn upgrade @blinkclaud/octobus@version

To upgrade to latest version run this command

yarn upgrade @blinkclaud/octobus --latest

Note: Octobus requires Typescript (>= v4.4), as well as the Decorator experimental feature. Therefore, the following config options should be present in your tsconfig.json file:

{
  "compilerOptions": {
    "target": "ES2017",
    "lib": ["es2017", "esnext.asynciterable", "dom"],
    "types": ["reflect-metadata"],
    "module": "commonjs",
    "moduleResolution": "node",
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true
  }
}

Guides

Below are links to detailed explanations to the various features of Octobus as well as practical examples:

References and Helpful Links

The following links would further aid the understanding of Octobus