Skip to content

rmulder/react-bootstrap-webpack-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

React 16+ Bootstrap webpack 4 with Hot Reload STARTER

npm Build Status Coverage Status FOSSA Status

ReactJS + Bootstrap starter with hot reload

Full client and server side in ES6+-ES2015+

Concept behind: this starter is an easy way to understand and ready to use ReactJS (ES6) + bootstrap + webpack starter with:

  • no hard core Webpack config so it is more commonly understandable (they are numerous amazing starters with incredible webpack configs β€” hard core configs aren't bad things at all! β€”. This one is just for easier understanding for people even discovering webpack)
  • with hot reload (ReactJS + webpack => hot reload = WINNER)
  • no flux (yes, to give you freedom to add then since you may want to use something else like observables?)
  • with JWT auth
  • ReactJS Components written with optimization tricks (stateless, pure render...).

preview

Looking for server side rendering? check this project with SSR added here

Breaking changes since v6.1.0

  • add React 16.3.x new context API use case (you may no more need redux)
  • migrated to bootstrap 4

Breaking changes since v6.0.0

  • upgrade to React 16.3.x
  • upgrade to webpack 4
  • upgrade to react-hot-loader v4
  • drop CSS Module in favor of styled-components (scoped style, theme support, better scaling in huge applications, simplify toolchain and keep nearly SASS syntax)
  • add flow types (even a little typing at least for better dev experience)
  • drop prop-types(static and dynamic typing apart, flow type does far more so avoid writing 2 differents typing system)
  • workbox-webpack-plugin (service worker caching powerful tool from Google)
  • loadable-components (split your code: here splitted just by routes, by you can split a component level if you feel the need)
  • webpack-bundle-analyzer: analyze your bundle size (maybe you should split or lazy load some part of your application: you will see clearly how to fix that)
  • drop moment for date-fns (since far smaller size and job's done)

Breaking changes since v5.0.0

HUGE Breaking changes since 3.0.0

  • upgrade to React 15.6.x
  • upgrade to webpack v3
  • add JWT authentication (protected route, logout components...)

HUGE Breaking changes since 2.1.0

  • upgrade to react-router v4

HUGE Breaking changes since 2.0.0

  • upgrade to webpack 2
  • remove autoprefixer in favor of postcss and cssnext
  • upgrade React to 15.5.4+
  • PropTypes comes now from prop-types
  • upgrade dependencies

If you prefer a webpack 1 version, version 1.1.0 is what you are looking for.

Detailed Content

Front:

Tool chain:

  • babel 6+
  • eslint
  • hot reload
  • loaders
    • js / jsx
    • css
    • json
    • images formats
    • svg and fonts formats

tests:

  • Jest
  • enzyme

Usage

Install

npm install

or

yarn install

bundle dev mode

npm run dev

dev : hot reload mode

npm run start

tests

npm run test

bundle production mode

npm run prod

mini node-express server

with server hot reload (and dev bundle):

npm run serve-dev

without hot reload (and prod bundle):

npm run serve-prod

License

The MIT License (MIT)

Copyright (c) 2018 Erwan DATIN

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

FOSSA Status

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published