Skip to content
A building block for polyglot Micro-frontends & Micro-service for NodeJS & Browsers in any flavor you want es6, TS, NG, React... we don't care!
TypeScript JavaScript HTML Shell
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
packages
scripts
.gitignore
.npmignore
.prettierignore
.prettierrc.js
.remarkrc
.travis.yml
LICENSE
README.md
lerna.json
package.json
tslint.json
yarn.lock

README.md

Join the chat at https://gitter.im/scalecube-js/Lobby

NOTICE versions 0.0.x are experimental without LTS or the API and behavior might change from patch to patch

Codacy Badge

Scalecube

Scalecube is a toolkit for creating microservices based systems.
Scalecube provides tools like:
Microservice,
Router,
Discovery,
Transport-browser,
Transport-nodejs,
Gateway,
Cluster-browser,
Cluster-nodejs.

Basic Usage

npm:

npm install @scalecube/scalecube-microservice

yarn:

yarn add @scalecube/scalecube-microservice

Usage

provider side - create the service & publish it.

import { createMicroservice } from '@scalecube/scalecube-microservice';
const microserviceInstance = createMicroservice({
  services: [{
        definition: greetingsDefinition,
        reference: { hello : (name) => `Hello ${name}!` }
  }],
  address : 'remoteService1'
});

consumer side - use the service.

import { createMicroservice } from '@scalecube/scalecube-microservice';
const greetingService = createMicroservice({
  seedAddress : 'remoteService1'
}).createProxy({  serviceDefinition: greetingsDefinition });
greetingService.hello('Me').then(console.log) // 'Hello Me!'

The service can be written and re-written in every available technology.
it can be run in workers, browser or server.
Scalecube provide us a way to publish the service from any platform and consume the service at any plaform without any additional code.

For more details how to use it see scalecube basic usage

documentation

please Read before starting to work with scalecube.

Project Status

currently we are working on version 0.2.x and it will be the first version with LTS (meaning the API will be backwards compatible until the major will change).
The SLA is still under debate and will be release as part of 0.2.x
for more details about 0.2.x go to https://github.com/scalecube/scalecube-js/issues/30

Version

MAJOR version when you make incompatible API changes,

MINOR version when you add functionality in a backwards-compatible manner, and

PATCH version when you make backwards-compatible bug fixes.

You can’t perform that action at this time.