Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

SFDevLabs/react-starter-kit

Open more actions menu
 
 

Repository files navigation

React Starter Kit — "isomorphic" web app boilerplate

Support us on Bountysource

React Starter Kit is an opinionated boilerplate for web development built on top of Facebook's React library, Node.js / Express server and Flux architecture. Containing modern web development tools such as Webpack, Babel and BrowserSync. Helping you to stay productive following the best practices. A solid starting point for both professionals and newcomers to the industry.

Demo: http://demo.reactstarterkit.com  |  Join #react-starter-kit chatroom on Gitter to stay up to date.

Documentation

Directory Layout

.
├── /build/                     # The folder for compiled output
├── /docs/                      # Documentation files for the project
├── /node_modules/              # 3rd-party libraries and utilities
├── /src/                       # The source code of the application
│   ├── /api/                   # REST API / Relay endpoints
│   ├── /actions/               # Action creators that allow to trigger a dispatch to stores
│   ├── /components/            # React components
│   ├── /constants/             # Constants (action types etc.)
│   ├── /content/               # Static content (plain HTML or Markdown, Jade, you name it)
│   ├── /core/                  # Core components (Flux dispatcher, base classes, utilities)
│   ├── /decorators/            # Higher-order React components
│   ├── /public/                # Static files which are copied into the /build/public folder
│   ├── /stores/                # Stores contain the application state and logic
│   ├── /templates/             # HTML templates for server-side rendering, emails etc.
│   ├── /utils/                 # Utility classes and functions
│   ├── /app.js                 # Client-side startup script
│   └── /server.js              # Server-side startup script
├── /tools/                     # Build automation scripts and utilities
│   ├── /lib/                   # Library for utility snippets
│   ├── /build.js               # Builds the project from source to output (build) folder
│   ├── /bundle.js              # Bundles the web resources into package(s) through Webpack
│   ├── /clean.js               # Cleans up the output (build) folder
│   ├── /config.js              # Webpack configuration for both client and server side bundles
│   ├── /copy.js                # Copies static files to output (build) folder
│   ├── /serve.js               # Launches the Node.js/Express web server in a seperate process
│   ├── /start.js               # Launches the development web server with "live reload" functionality
│   └── /(deploy.js)            # Deploys your web application (Planned)
│── package.json                # The list of 3rd party libraries and utilities
└── preprocessor.js             # ES6 transpiler settings for Jest

Getting Started

Just clone or fork the repo and start hacking:

$ git clone -o react-starter-kit -b master --single-branch \
      https://github.com/kriasoft/react-starter-kit.git MyApp
$ cd MyApp
$ npm install                   # Install Node.js components listed in ./package.json
$ npm start                     # Compile and launch

How to Build

$ npm run build                 # or, `npm run build -- release`

By default, it builds in a debug mode. If you need to build in a release mode, just add -- release flag. This will optimize the output bundle for production deployment.

How to Run

$ npm start                     # or, `npm start -- release`

This will start a lightweight development server with "live reload" and synchronized browsing across multiple devices and browsers.

How to Deploy

$ npm run deploy                # or, `npm run deploy -- production`

For more information see tools/deploy.js.

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-starter-kit
$ git merge react-starter-kit/master
$ npm install

How to Test

Run unit tests powered by Jest with the following npm command:

$ npm test

Test any javascript module by creating a __tests__/ directory where the file is. Name the test by appending -test.js to the js file. Jest will do the rest.

Customizations

Related Projects

Learn More

Support

License

Copyright © 2014-2015 Kriasoft, LLC. This source code is licensed under the MIT license found in the LICENSE.txt file. The documentation to the project is licensed under the CC BY-SA 4.0 license.


Made with ♥ by Konstantin Tarkus (@koistya) and contributors

About

React Starter Kit — a skeleton of an "isomorphic" web application / SPA built with React.js, Express, Flux, ES6+, JSX, Babel, PostCSS, Webpack, BrowserSync...

Resources

License

Stars

1 star

Watchers

3 watching

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 61.2%
  • CSS 20.3%
  • HTML 18.5%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.