/react-webpack2-boilerplate

Webpack 2 Boilerplate to develop React Applications using CSS, ES6, Mocha, Chai, Istanbul and ESLint

Primary LanguageJavaScriptMIT LicenseMIT

react-webpack2-boilerplate

Webpack 2 Boilerplate to develop React Applications using CSS, ES6, Mocha, Chai, Istanbul and ESLint

Why another React boilerplate?

I have been working with react for a while and I always have this config problems with new versions, new bugs or those boilerplates are using some dependecies that does not allow me to see what is the current configuration in a easy way to understand what is going on there and how everything is working on. So, I decided to make this boilerplate with all the libraries ready to start just to create your App. I made it to understand how things work and then you could change whatever you need to enhace your App.

What you will get?

  1. Webpack 2
  2. React
  3. Bootstrap (Only css)
  4. React-Router
  5. ESLint
  6. Mocha, Chai, Enzyme (Unit Testing Framework)
  7. Istanbul (Coverage)
  8. React-Notification-System
  9. Basic React Components (Button, Row, Column, Panel, Navigation)
  10. Yarn

Which features has this Boilerplate?

  1. Login Page
  2. Authentication by token in localStorage
  3. Dashboard Page
  4. Navigation (Active Links)
  5. Notifications

Start Development

To start the boilerplate in dev mode type this in your console:

yarn dev

Use these credentials to pass the login:

email: test@email.com pass: password

Build App

To build your app run this command in your console:

yarn build

your files will be at fodler 'dist'

Run Tests

To run tests type this in your console:

yarn test

Run Coverage

To run coverage type this in your console:

yarn coverage

You will be available to see folder 'coverage' with a bunch of files, open index.html.

Run ESLint

To run ESLint type this in your console:

yarn lint

Contribution

To Contribute to this boilerplate please Fork the project and make a pull request. I will check if that new feature is useful for the intention of this project. Anyway you could contact to me anytime in my twitter @otrapelota