Risen.JS is a simple, fast, and unopinionated Node.JS framework for building efficient, and scalable server-side applications with built-in support for Express and Quick.DB.
Lead Maintainer: David Makuni
Documentation: Click Here
Summary
Risen.JS is a framework for building event-driven, efficient, and scalable non-blocking Node.JS server-side applications. It uses ES6+ JavaScript and combines elements of OOP (Object Oriented Programming) and FP (Functional Programming).
Under the hood, Risen.JS makes use of the well-known and robust Express HTTP(s) package, Quick-DB for long term persistent storage, and the native child process feature in Node.JS. The library also uses Babel to support runtime transpilation of ES6+ code.
Risen.JS provides a level of abstraction above these frameworks but also exposes their APIs directly to the developer. This allows for easy use of the myriad third-party modules, packages, and middleware’s which are available for each platform.
Because the "services" you will create run as independent Node.JS processes, this means you can build microservices utilizing the tens of thousands of NPM packages that currently exist and are added every day. Simply put anything you can do in Node.JS, you can build a microservice to do for you.
Supports Node 10.x +
Tutorial
We highly recommend you go through this tutorial to get a better feel of this framework. It will cover all the basics of the framework and demonstrate some of the possibilities of Risen.JS.
You can also see a working demo of the above tutorial by following this link.
Installation
Start building scalable high-performance microservice architectures today! To install please follow the below instructions:
NPM
npm install risen-js --save
Yarn
yarn add risen-js
Testing
Risen.JS is fully tested and production-ready. To execute the test suite run the following commands:
yarn test
Ensure you have installed the package before doing this using yarn
or npm install
.
Development
This framework is designed to be open-source and free for all to use according to the MIT License.
To support further development this package includes an integrated development server, providing a full runtime environment for future development. Follow the below steps to set the repository up locally.
Clone the repository
git clone https://github.com/daviemakz/risen-js.git
Install the dependencies
yarn install
Start the server
When running the development server, as you make changes all the tests will execute automatically, allowing you to easily develop new features in the framework while ensuring the library still works.
To run the development server against the full test suite, you simply execute:
yarn dev:server
Documentation
The documentation of Risen.JS is installed as a submodule to this repository.
If you have already installed the repositor you can initialise the submodule:
git submodule update --init --recursive
To update the submodule to the latest version run:
git submodule update --remote --merge
Installation
If you have already installed Risen.JS in the main directory run this file:
./init-docs.sh
Starting documentation server
To run the local documentation server run:
cd docs
yarn start
Contributing
All contributions are very welcome, please read my CONTRIBUTING.md first. You can submit any ideas as pull requests or as GitHub issues. If you'd like to improve code, please feel free!
License