<p align="center">
  
  <img alt="merng logo" src="https://i.ibb.co/Yj3Dbr0/MERNG.png" width="150px" />
</p>

<h2 align="center">MERNG-BoilerPlate</h2>
<p align="center">
  This is boilerplate for MERN stack with GraphQL and with integrations like Redux and SSR 
</p>
<br><br>


[![Dependabot](https://badgen.net/badge/Dependabot/enabled/green?icon=dependabot)](https://dependabot.com/)



 ## Checkout the  [MERN-Boilerplate](https://github.com/anikethsaha/MERN-Boilerplate) for MERN Stack Boilerplate
  
> ## GraphQL subscription is not added as a functional as it was quite unstable during the development time and can be added later


## Getting Started
- ##### Clone the project
- ##### Install Dependecies
```bash
$ npm i
```
- ##### run the webpack
```bash
$ npm run build
```
- ##### run the express server
```bash
$ npm run server
```

- ##### run the graphql server
```bash
$ nodemon GraphQLServer # Please install nodemon globally using -  $ npm i -g nodemon
```
- ##### To run the webpack-dev-server 
```bash
$ npm run client:dev
```


## Look for the `config/index.js` for making changes in the configs of the project




## technology
- NodeJS - Server
- ExpressJS - Nodejs framework
- MongoDB - Database
- ReactJS - Frontend
- Redux - State Management
- Docker - Containerization and image 
- Eslint - Linter
- Webpack - Bundler
- Babel - Loader and Compiler/Transpiler
- GraphQL - Query Language
- Apollo - Graphql Engines and Client Side support


## Features
- [x] Server Side Rendering
- [x] State Management
- [x] GraphQL Queries
- [x] GraphQL Subscriptions
- [x] GraphQL Mutations
- [x] Image for Container
- [x] Model Controller Project Structure
- [ ] Build Pipelines
- [ ] Tests
- [ ] Examples
- [ ] Live Demo

## [License](https://github.com/anikethsaha/MERNG-BoilerPlate/blob/master/LICENSE)
