README.md (12757B)
1 ## React Starter Kit — "[isomorphic](http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/)" web app boilerplate <a href="https://github.com/kriasoft/react-starter-kit/stargazers"><img src="https://img.shields.io/github/stars/kriasoft/react-starter-kit.svg?style=social&label=Star&maxAge=3600" height="20"></a> <a href="https://twitter.com/ReactStarter"><img src="https://img.shields.io/twitter/follow/ReactStarter.svg?style=social&label=Follow&maxAge=3600" height="20"></a> 2 3 [React Starter Kit](https://www.reactstarterkit.com) is an opinionated boilerplate for web 4 development built on top of [Node.js](https://nodejs.org/), 5 [Express](http://expressjs.com/), [GraphQL](http://graphql.org/) and 6 [React](https://facebook.github.io/react/), containing modern web development 7 tools such as [Webpack](http://webpack.github.io/), [Babel](http://babeljs.io/) 8 and [Browsersync](http://www.browsersync.io/). Helping you to stay productive 9 following the best practices. A solid starting point for both professionals 10 and newcomers to the industry. 11 12 **See** [getting started guide](./docs/getting-started.md), [demo][demo], 13 [docs](https://github.com/kriasoft/react-starter-kit/tree/master/docs), 14 [roadmap](https://github.com/kriasoft/react-starter-kit/projects/1) | 15 **Join** [#react-starter-kit][chat] chat room on Gitter | 16 **Visit our sponsors**:<br><br> 17 18 [](https://rollbar.com/?utm_source=reactstartkit(github)&utm_medium=link&utm_campaign=reactstartkit(github)) 19 [](https://localizejs.com/?cid=802&utm_source=rsk) 20 21 22 ### Getting Started 23 24 * Follow the [getting started guide](./docs/getting-started.md) to download and run the project 25 ([Node.js](https://nodejs.org/) >= 6.5) 26 * Check the [code recipes](./docs/recipes) used in this boilerplate, or share yours 27 28 29 ### Customization 30 31 The `master` branch of React Starter Kit doesn't include a Flux implementation or any other 32 advanced integrations. Nevertheless, we have some integrations available to you in *feature* 33 branches that you can use either as a reference or merge into your project: 34 35 * [feature/redux](https://github.com/kriasoft/react-starter-kit/tree/feature/redux) — isomorphic 36 Redux by [Pavel Lang](https://github.com/langpavel) 37 (see [how to integrate Redux](./docs/recipes/how-to-integrate-redux.md)) (based on `master`) 38 * [feature/apollo](https://github.com/kriasoft/react-starter-kit/tree/feature/apollo) — isomorphic 39 Apollo Client by [Pavel Lang](https://github.com/langpavel) 40 (see [Tracking PR #1147](https://github.com/kriasoft/react-starter-kit/pull/1147)) (based on `feature/redux`) 41 * [feature/react-intl](https://github.com/kriasoft/react-starter-kit/tree/feature/react-intl) — 42 isomorphic Redux and React Intl by [Pavel Lang](https://github.com/langpavel) 43 (see [how to integrate React Intl](./docs/recipes/how-to-integrate-react-intl.md)) (based on `feature/redux`) 44 * [feature/bootstrap3](https://github.com/kriasoft/react-starter-kit/tree/feature/bootstrap3) ***unmaintained*** — 45 Simplest possible integration of [react-bootstrap](https://react-bootstrap.github.io/) 46 by [Pavel Lang](https://github.com/langpavel) (based on `master`) 47 48 You can see status of most reasonable merge combination as [PRs labeled as `TRACKING`](https://github.com/kriasoft/react-starter-kit/labels/TRACKING) 49 50 If you think that any of these features should be on `master`, or vice versa, some features should 51 removed from the `master` branch, please [let us know](https://gitter.im/kriasoft/react-starter-kit). 52 We love your feedback! 53 54 55 ### Comparison 56 57 <table width="100%"> 58 <tr> 59 <th> </th> 60 <th> 61 <p>React Starter Kit</p> 62 <a href="https://github.com/kriasoft/react-starter-kit"><img src="https://img.shields.io/github/stars/kriasoft/react-starter-kit.svg?style=social&label=~react-starter-kit" height="20"></a> 63 <a href="https://twitter.com/ReactStarter"><img src="https://img.shields.io/twitter/follow/ReactStarter.svg?style=social&label=@ReactStarter" height="20"></a> 64 </th> 65 <th> 66 <p>React Static Boilerplate</p> 67 <a href="https://github.com/kriasoft/react-static-boilerplate"><img src="https://img.shields.io/github/stars/kriasoft/react-static-boilerplate.svg?style=social&label=~react-static-boilerplate" height="20"></a> 68 <a href="https://twitter.com/ReactStatic"><img src="https://img.shields.io/twitter/follow/ReactStatic.svg?style=social&label=@ReactStatic" height="20"></a> 69 </th> 70 <th> 71 <p>ASP.NET Core Starter Kit</p> 72 <a href="https://github.com/kriasoft/aspnet-starter-kit"><img src="https://img.shields.io/github/stars/kriasoft/aspnet-starter-kit.svg?style=social&label=~aspnet-starter-kit" height="20"></a> 73 <a href="https://twitter.com/dotnetreact"><img src="https://img.shields.io/twitter/follow/dotnetreact.svg?style=social&label=@dotnetreact" height="20"></a> 74 </th> 75 <tr> 76 <tr> 77 <th align="right">App type</th> 78 <td align="center"><a href="http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/">Isomorphic</a> (universal)</td> 79 <td align="center"><a href="https://en.wikipedia.org/wiki/Single-page_application">Single-page application</a></td> 80 <td align="center"><a href="https://en.wikipedia.org/wiki/Single-page_application">Single-page application</a></td> 81 </tr> 82 <tr> 83 <th colspan="4">Frontend</th> 84 <tr> 85 <tr> 86 <th align="right">Language</th> 87 <td align="center">JavaScript (ES2015+, JSX)</td> 88 <td align="center">JavaScript (ES2015+, JSX)</td> 89 <td align="center">JavaScript (ES2015+, JSX)</td> 90 </tr> 91 <tr> 92 <th align="right">Libraries</th> 93 <td align="center"> 94 <a href="https://github.com/facebook/react">React</a>, 95 <a href="https://github.com/ReactJSTraining/history">History</a>, 96 <a href="https://github.com/kriasoft/universal-router">Universal Router</a> 97 </td> 98 <td align="center"> 99 <a href="https://github.com/facebook/react">React</a>, 100 <a href="https://github.com/ReactJSTraining/history">History</a>, 101 <a href="https://github.com/reactjs/redux">Redux</a> 102 </td> 103 <td align="center"> 104 <a href="https://github.com/facebook/react">React</a>, 105 <a href="https://github.com/ReactJSTraining/history">History</a>, 106 <a href="https://github.com/reactjs/redux">Redux</a> 107 </td> 108 </tr> 109 <tr> 110 <th align="right">Routes</th> 111 <td align="center">Imperative (functional)</td> 112 <td align="center">Declarative</td> 113 <td align="center">Declarative, cross-stack</td> 114 </tr> 115 <tr> 116 <th colspan="4">Backend</th> 117 <tr> 118 <tr> 119 <th align="right">Language</th> 120 <td align="center">JavaScript (ES2015+, JSX)</td> 121 <td align="center">n/a</td> 122 <td align="center">C#, F#</td> 123 </tr> 124 <tr> 125 <th align="right">Libraries</th> 126 <td align="center"> 127 <a href="https://nodejs.org">Node.js</a>, 128 <a href="http://expressjs.com/">Express</a>, 129 <a href="http://docs.sequelizejs.com/en/latest/">Sequelize</a>,<br> 130 <a href="https://github.com/graphql/graphql-js">GraphQL</a></td> 131 <td align="center">n/a</td> 132 <td align="center"> 133 <a href="https://docs.asp.net/en/latest/">ASP.NET Core</a>, 134 <a href="https://ef.readthedocs.io/en/latest/">EF Core</a>,<br> 135 <a href="https://docs.asp.net/en/latest/security/authentication/identity.html">ASP.NET Identity</a> 136 </td> 137 </tr> 138 <tr> 139 <th align="right"><a href="https://www.quora.com/What-are-the-tradeoffs-of-client-side-rendering-vs-server-side-rendering">SSR</a></th> 140 <td align="center">Yes</td> 141 <td align="center">n/a</td> 142 <td align="center">n/a</td> 143 </tr> 144 <tr> 145 <th align="right">Data API</th> 146 <td align="center"><a href="http://graphql.org/">GraphQL</a></td> 147 <td align="center">n/a</td> 148 <td align="center"><a href="https://docs.asp.net/en/latest/tutorials/first-web-api.html">Web API</a></td> 149 </tr> 150 </table> 151 152 153 ### Backers 154 155 ♥ React Starter Kit? Help us keep it alive by donating funds to cover project 156 expenses via [OpenCollective](https://opencollective.com/react-starter-kit) or 157 [Bountysource](https://salt.bountysource.com/teams/react-starter-kit)! 158 159 <a href="http://www.nekst.me/" target="_blank" title="lehneres"> 160 <img src="https://github.com/lehneres.png?size=64" width="64" height="64" alt="lehneres"> 161 </a> 162 <a href="http://www.vidpanel.com/" target="_blank" title="Tarkan Anlar"> 163 <img src="https://github.com/tarkanlar.png?size=64" width="64" height="64" alt="Tarkan Anlar"> 164 </a> 165 <a href="https://morten.olsen.io/" target="_blank" title="Morten Olsen"> 166 <img src="https://github.com/mortenolsendk.png?size=64" width="64" height="64" alt="Morten Olsen"> 167 </a> 168 <a href="https://twitter.com/adamthomann" target="_blank" title="Adam"> 169 <img src="https://github.com/athomann.png?size=64" width="64" height="64" alt="Adam"> 170 </a> 171 <a href="http://dsernst.com/" target="_blank" title="David Ernst"> 172 <img src="https://github.com/dsernst.png?size=64" width="64" height="64" alt="David Ernst"> 173 </a> 174 <a href="http://zanehitchcox.com/" target="_blank" title="Zane Hitchcox"> 175 <img src="https://github.com/zwhitchcox.png?size=64" width="64" height="64" alt="Zane Hitchcox"> 176 </a> 177 <a href="https://opencollective.com/react-starter-kit" target="_blank"> 178 <img src="https://opencollective.com/static/images/become_backer.svg" width="64" height="64" alt=""> 179 </a> 180 181 182 ### How to Contribute 183 184 Anyone and everyone is welcome to [contribute](CONTRIBUTING.md) to this project. The best way to 185 start is by checking our [open issues](https://github.com/kriasoft/react-starter-kit/issues), 186 [submit a new issues](https://github.com/kriasoft/react-starter-kit/issues/new?labels=bug) or 187 [feature request](https://github.com/kriasoft/react-starter-kit/issues/new?labels=enhancement), 188 participate in discussions, upvote or downvote the issues you like or dislike, send [pull 189 requests](CONTRIBUTING.md#pull-requests). 190 191 192 ### Learn More 193 194 * [Getting Started with React.js](http://facebook.github.io/react/) 195 * [Getting Started with GraphQL and Relay](https://quip.com/oLxzA1gTsJsE) 196 * [React.js Questions on StackOverflow](http://stackoverflow.com/questions/tagged/reactjs) 197 * [React.js Discussion Board](https://discuss.reactjs.org/) 198 * [Flux Architecture for Building User Interfaces](http://facebook.github.io/flux/) 199 * [Enzyme — JavaScript Testing utilities for React](http://airbnb.io/enzyme/) 200 * [Flow — A static type checker for JavaScript](http://flowtype.org/) 201 * [The Future of React](https://github.com/reactjs/react-future) 202 * [Learn ES6](https://babeljs.io/docs/learn-es6/), [ES6 Features](https://github.com/lukehoban/es6features#readme) 203 204 205 ### Related Projects 206 207 * [GraphQL Starter Kit](https://github.com/kriasoft/graphql-starter-kit) — Boilerplate for building data APIs with Node.js, JavaScript (via Babel) and GraphQL 208 * [Membership Database](https://github.com/membership/membership.db) — SQL schema boilerplate for user accounts, profiles, roles, and auth claims 209 * [Babel Starter Kit](https://github.com/kriasoft/babel-starter-kit) — Boilerplate for authoring JavaScript/React.js libraries 210 211 212 ### Support 213 214 * [#react-starter-kit](http://stackoverflow.com/questions/tagged/react-starter-kit) on Stack Overflow — Questions and answers 215 * [#react-starter-kit](https://gitter.im/kriasoft/react-starter-kit) on Gitter — Watch announcements, share ideas and feedback 216 * [GitHub issues](https://github.com/kriasoft/react-starter-kit/issues), or [Scrum board](https://waffle.io/kriasoft/react-starter-kit) — File issues, send feature requests 217 * [appear.in/react](https://appear.in/react) — Open hours! Exchange ideas and experiences (React, GraphQL, startups and pet projects) 218 * [@koistya](https://twitter.com/koistya) on [Codementor](https://www.codementor.io/koistya), or [Skype](http://hatscripts.com/addskype?koistya) — Private consulting 219 220 221 ### License 222 223 Copyright © 2014-present Kriasoft, LLC. This source code is licensed under the MIT 224 license found in the [LICENSE.txt](https://github.com/kriasoft/react-starter-kit/blob/master/LICENSE.txt) 225 file. The documentation to the project is licensed under the 226 [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/) license. 227 228 --- 229 Made with ♥ by Konstantin Tarkus ([@koistya](https://twitter.com/koistya)) and [contributors](https://github.com/kriasoft/react-starter-kit/graphs/contributors) 230 231 [rsk]: https://www.reactstarterkit.com 232 [demo]: http://demo.reactstarterkit.com 233 [node]: https://nodejs.org 234 [chat]: https://gitter.im/kriasoft/react-starter-kit