React Static Boilerplate
A static website starter kit powered by React.js and Webpack.
Visit demo site | See roadmap | Join #react-static-boilerplate chatroom on Gitter to stay up to date.
Features
✓ Generates static .html
pages from React components
✓ Generates routes based on the list of files in the /pages
folder
✓ Next generation JavaScript with Babel
✓ Sass syntax for CSS via postCSS and precss
✓ Development web server with BrowserSync and React Transform
✓ Bundling and optimization with Webpack
✓ Code-splitting and async chunk loading
✓ Easy deployment to GitHub Pages, Amazon S3 or Firebase
✓ Yeoman generator (generator-react-static)
Directory Layout
.
├── /build/ # The folder for compiled output
├── /node_modules/ # 3rd-party libraries and utilities
├── /components/ # React components
├── /core/ # Core framework
├── /pages/ # React.js-based web pages
│ ├── /blog/ # Blog post entries example
│ ├── /404.js # Not Found page
│ ├── /500.js # Error page
│ ├── /about.js # About Us page
│ └── /index.js # Home page
├── /static/ # Static files such as favicon.ico etc.
├── /test/ # Unit and integration tests
├── /tools/ # Build automation scripts and utilities
│── app.js # The main JavaScript file (entry point)
│── config.js # Website configuration / settings
│── LICENSE.txt # License file
│── package.json # Dev dependencies and NPM scripts
└── README.md # Project overview
Getting Started
Just clone the repo, install Node.js modules and run npm start
:
$ git clone -o react-static-boilerplate -b master --single-branch \
https://github.com/koistya/react-static-boilerplate.git MyApp
$ cd MyApp
$ npm install
$ npm start
Then open http://localhost:3000/ in your browser.
How to Test
The unit tests are powered by chai and mocha.
$ npm test
How to Deploy
$ npm run deploy # Deploys the project to GitHub Pages
Alternatively, you can build a production release to manually deploy to S3, Firebase, Netlify, and other static hosts. Simply run the command below and copy the generated build
folder to your static host.
$ npm run build release # Build production release
How to Update
You can always fetch and merge the recent changes from this repo back into your own project:
$ git checkout master
$ git fetch react-static-boilerplate
$ git merge react-static-boilerplate/master
$ npm install
Related Projects
Learn More
- Getting Started with React.js
- Getting Started with GraphQL and Relay
- React.js Questions on StackOverflow
- React.js Discussion Board
- Learn ES6, ES6 Features
Made with ♥ by Konstantin Tarkus (@koistya) and contributors | MIT License