[Docs] Add layers description

This commit is contained in:
Qolzam
2018-02-20 19:20:37 +07:00
parent 37f5120a30
commit 75bca01e27
12 changed files with 26 additions and 115 deletions

25
docs/layers.md Normal file
View File

@@ -0,0 +1,25 @@
# Layers
<img height="500" width="400" src="https://raw.githubusercontent.com/Qolzam/react-social-network/next/docs/app/layer.png">
## Supporting multiple data platforms.
With dependency injection and new structure we have tried to support variety of data platforms such as Google Cloud Firebase, AWS, Azure or using backend such as ASP.NET, PHP, JAVA, etc.
<img height="500" width="400" src="https://raw.githubusercontent.com/Qolzam/react-social-network/next/docs/app/layer-1.png">
## Easy and fast to scale in structure
Layers are organized in the way we have easy and less changes for adding/removing features. It could be integrated with server side too. As a result we are faster in developing in both side.
### Core
- The infrastructure,
- Providing interfaces for services
- Domain
### Data
- Firebase Data Client
- AWS Data Client
- Azure Data Client
- ASP.NET Data Client
- PHP Data Client
### Components
<img height="500" width="400" src="https://raw.githubusercontent.com/Qolzam/react-social-network/next/docs/app/layer-4.png">
## Integrating and reusability in both mobile and web app
With new structure we are able to develop the mobile app in parallel with web app **only** with changing `Components` layer. It means we can keep `Core`, `Data` layers, `Actions`, `Reducers`, etc. What we have high reusability and fast in producing the products.
<img height="500" width="400" src="https://raw.githubusercontent.com/Qolzam/react-social-network/next/docs/app/layer-5.png">