https://github.com/yaroslavgaponov/reddwarf
microservice framework
https://github.com/yaroslavgaponov/reddwarf
backend broker framework javascript microservice microservices nodejs typescript
Last synced: about 1 month ago
JSON representation
microservice framework
- Host: GitHub
- URL: https://github.com/yaroslavgaponov/reddwarf
- Owner: YaroslavGaponov
- Created: 2020-12-10T23:55:08.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2020-12-19T10:45:24.000Z (over 5 years ago)
- Last Synced: 2025-06-23T18:06:54.213Z (12 months ago)
- Topics: backend, broker, framework, javascript, microservice, microservices, nodejs, typescript
- Language: TypeScript
- Homepage:
- Size: 1.65 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
RedDwarf
========
microservice framework
# Sections
* [Overview](#overview)
* [General schema](#general-schema)
* [Supported languages](#supported-languages)
* [Supported message brokers](#supported-message-brokers)
* [How to try](#how-to-try)
* [Required](#required)
* [Start core components](#start-core-components)
* [With local broker](#with-local-broker)
* [With redis broker](#with-redis-broker)
* [Open monitor](#open-monitor)
* [REST access](#rest-access)
* [Stop core components](#stop-core-components)
* [Core components](#core-components)
* [Gateway](#gateway)
* [Wherefore](#wherefore)
* [Monitor](#monitor)
* [Wherefore](#wherefore-1)
* [Upstream](#upstream)
* [Wherefore](#wherefore-2)
# Overview
The goal of this framework is to create a convenient and flexible platform for developing microservices in different languages.
# General schema

# Supported languages
- [Example Node.js (Typescript)](packages/demo-typescript/readme.md)
- [Example Node.js (Javascript)](packages/demo-nodejs/readme.md)
- ...
# Supported message brokers
- local
- redis
- ...
# How to try
## Required
- docker
- docker-compose
- make
## Start core components
## With local broker
```sh
make build
make start
```
## With redis broker
```sh
make build-redis
make start-redis
```

## Open monitor
Open `http://localhost:38081/`
or
```sh
make monitor
```

## REST access
Open `http://localhost:38082/upstream/dwarf-demo/rreverse?str=hello`
or
```sh
curl "http://localhost:38082/upstream/dwarf-demo/reverse?str=Hello"
```

## Stop core components
```sh
make stop
```
or
```sh
make stop-redis
```
# Core components
## Gateway
### Wherefore
* single entry point
* simple protocol for accessing different message brokers
[Dwarf-gateway](packages/gateway/readme.md)
## Monitor
### Wherefore
* сonvenient graphical interface to the system
* quick health check of microservices
[Dwarf-monitor](packages/monitor/readme.md)
## Upstream
### Wherefore
* microservices have REST protocol support out of the box
[Dwarf-upstream](packages/upstream/readme.md)