Skip to content

An opensource implementation of clean architecture on an API powered by NodeJS

License

Notifications You must be signed in to change notification settings

pupupulp/ezra-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ezra-js

contributors stars commits last commit License

An opensource implementation of clean architecture on an API powered by NodeJS

Quickstart

Installation

App Setup

  1. Clone the repository
$   git clone https://github.com/pupupulp/ezra-js.git
  1. Go to source directory
$   cd ezra-js
  1. Install dependencies
$   npm install

Usage

$   npm start

Overview

Note: Interface classes are used using extends instead of implements but has a default method definition that throws a not implemented exception if the method is not overrided to simulate the implements behavior.

Diagram Summary

Flow of Dependency - the flow of dependencies runs from the outside in, which makes the inner part of the circle independent of the outer.

Core Layer (Independent)
  • Entities - contains all the business entities, (ex. User, Customer, etc.).

  • Use Cases - contains all the business logic, (ex. getUser, addCustomer, etc.).

Other Layer
  • Controllers/Presenters/Gateways - formats data in and out, and serves as an entry and exit points to use cases.

  • Frameworks - contains changeable, updateable, and removable parts of the system.

About

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Related Projects

You might want to checkout these projects:

  • konyvtar-js - An opensource library/package of code wrappers for ExtJS 6.2.0 GPL.
  • nchikota-js - An opensource tech stack composed of ExpressJS, NodeJS, ExtJS.
  • passerelle-js - An opensource API gateway built with ExpressJS.
  • spasojevic-js - A simulation of knowledge transfer through generations.
  • neural-net-js - An opensource package to create a Neural Network.
  • microservices-architecture - An opensource repository for all my learnings regarding microservices.

Contributors

Author

Eagan Martin

License

Copyright © 2019, Eagan Martin. Release under the MIT License