Skip to content

Commit

Permalink
Merge pull request #45 from iroy2000/adding-git-hook-module
Browse files Browse the repository at this point in the history
Adding git hook module
  • Loading branch information
iroy2000 authored Apr 1, 2018
2 parents 5bf4f15 + e8c04e2 commit 1729ee8
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 14 deletions.
63 changes: 50 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,31 @@
[![Dependency Status][david_img]][david_site]
[![Join the chat at https://gitter.im/iroy2000-react-redux-boilerplate/Lobby](https://badges.gitter.im/iroy2000-react-redux-boilerplate/Lobby.svg)](https://gitter.im/iroy2000-react-redux-boilerplate/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

### TL;DR

Before you dive into anything, see for yourself how easy you can setup a full workflow framework for your `development` and `deployment` for your real world project.

Step 1: Clone this repo
```
git clone https://github.com/iroy2000/react-redux-boilerplate.git
cd react-redux-boilerplate
```

Step 2: Install

```
npm install
```

Step 3: Start

```
npm run dev
```

And Done, as easy as 123!!


### Preface

React Redux Boilerplate is a full fledged __PRODUCTION READY__ workflow boilerplate for building complex React / Redux application.
Expand All @@ -26,35 +51,40 @@ __Note:__ This boilerplate is not to show case how to code in React / Redux, it

### Features / Benefits

Development
Features

* React 16
* Redux
* Saga
* ES6 / ES7
* ImmutableJS
* PreCSS ( supports SASS-like markup in your CSS )
* PostCSS ( it support CSS modules, and we recommended B.E.M style )
* Webpack 3
* Reselect
* Saga
* Lazy Loading component supports
* Type Checking with Babel Type Check ( Flow syntax )
* ESLint for syntax check
* Jest and Enzyme for Unit testing

Workflow

* Production bundle analyzing capability
* Hot Module Reload during development
* CSS / HTML / JS minification / Image optimization when built
* JS code duplication removal during built ( tree shaking capability )
* Built-in fancy cli dashboard for reporting run time compile status
* Built-in process to deploy files directly to S3 ( optional )
* Built-in lightweight config system
* Built-in support for multiple device concurrent debugging.
* Highly configurable build and workflow system ( webpack )
* Minimal setup time and allow you to invest into things that matters
* Everything automatic, you just care about development, nothing else \o/ Yeah ?!
* Development
* Hot Module Reload during development
* Built-in lightweight config system
* Built-in fancy cli dashboard for reporting run time compile status
* Built-in support for multiple device concurrent debugging
* Build / Production
* Production bundle analyzing capability
* CSS / HTML / JS minification / Image optimization when built
* JS code duplication removal during built ( tree shaking capability )
* Deployment
* Built-in git commit hook, helpful for CI/CD process
* Built-in process to deploy files directly to S3 ( optional )
* Productivity
* Highly configurable build and workflow system ( webpack )
* Minimal setup time and allow you to invest into things that matters
* Everything automatic, you just care about development, nothing else \o/ Yeah ?!

If you are interested, please read the `package.json` for all installed modules and plugins.

Expand All @@ -72,6 +102,7 @@ Basic
Advanced
1. [Lazy Loading Component](#lazy-loading-component)
1. [Writing Unit Test](#writing-unit-test)
1. [Configure git commit hook](#configure-git-commit-hook)
1. [Multiple Device Concurrent Debugging](#multiple-device-concurrent-debugging)
1. [Developing Template](#developing-template)
1. [Production Optimization and Bundle Analysis](#production-optimization-and-bundle-analysis)
Expand Down Expand Up @@ -316,6 +347,10 @@ For example, `MyFancyComponent.test.js` or `whatever_folder/AnotherComponent.spe

We also have two folders `__fixtures` and `__mocks__` in the repo, those are just handy example folders for you to put different type of test related files separately, these two folders are safe to delete if you don't need them.

## Configure git commit hook

We are using `husky` for preventing developers check in bad commits. Please go to package.json and look for `husky` the default settings. `husky` supports any git hooks and you can configure it to fit your needs.

## Multiple Device Concurrent Debugging

React Redux Boilerpalate has built in support for multiple device concurrent access by entering the ip address provide.
Expand Down Expand Up @@ -458,6 +493,7 @@ And this boilerplate has a process integrated to upload artifacts ( assets.json
* [Webpack how-to](https://github.com/petehunt/webpack-howto)
* [Webpack - The Confusing Part](https://medium.com/@rajaraodv/webpack-the-confusing-parts-58712f8fcad9)
* [Lazy Loading and Code Split for React Route](https://github.com/webpack/react-proxy-loader)
* [Lazy Loading and Code Split for Components](https://github.com/jamiebuilds/react-loadable)


### Relevant Knowledge
Expand All @@ -475,6 +511,7 @@ And this boilerplate has a process integrated to upload artifacts ( assets.json
* [Lessons from migrating a large codebase to React 16](https://blog.discordapp.com/lessons-from-migrating-a-large-codebase-to-react-16-e60e49102aa6)
* [B.E.M: 10 Common Problems And How To Avoid Them](https://www.smashingmagazine.com/2016/06/battling-bem-extended-edition-common-problems-and-how-to-avoid-them/)
* [Isomorphic JavaScript, The Future of Web Apps](http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/)
* [The Cost Of JavaScript](https://medium.com/dev-channel/the-cost-of-javascript-84009f51e99e)

## How to Contribute

Expand Down
8 changes: 7 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "react-redux-boilerplate",
"version": "0.9.55",
"version": "0.9.56",
"description": "React Redux Boilerplate is a workflow boilerplate that make life easier for developers by providing a virtual development environment and production ready build process framework out of the box.",
"scripts": {
"dev": "cross-env NODE_ENV=development webpack-dashboard -p 3300 -c red -t dashboard -- node bin/commands.js dev",
Expand Down Expand Up @@ -61,6 +61,7 @@
"extract-text-webpack-plugin": "^3.0.2",
"file-loader": "^1.1.6",
"html-webpack-plugin": "^2.30.1",
"husky": "^0.15.0-rc.13",
"identity-obj-proxy": "^3.0.0",
"image-webpack-loader": "^3.4.2",
"jest-cli": "^22.1.3",
Expand Down Expand Up @@ -119,6 +120,11 @@
"jsx"
]
},
"husky": {
"hooks": {
"pre-push": "npm test"
}
},
"keywords": [
"react",
"redux",
Expand Down

0 comments on commit 1729ee8

Please sign in to comment.