├── .gitignore ├── README.md ├── cirru ├── ga.html ├── index.cirru ├── navbar.cirru └── resources.cirru ├── coffee └── main.coffee ├── css └── main.css ├── dist ├── main.min.css ├── main.min.js └── vendor.min.js ├── gulpfile.coffee ├── images └── react-logo-1000-transparent.png ├── index.html └── package.json /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | bower_components/ 3 | node_modules/ 4 | 5 | build/ 6 | cirru/ 7 | 8 | coffee/ 9 | css/ 10 | 11 | gulpfile.coffee 12 | package.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | React.js Collections 2 | ------ 3 | 4 | Resources of React.js are collected in the Wiki pages: 5 | https://github.com/react-china/collections/wiki/Collections 6 | 7 | You may find a preview in a webpage on: 8 | http://http://react-china.org/collections/ 9 | 10 | Also there's 微博 account of news on React.js . 11 | http://weibo.com/p/1005055295090223/weibo 12 | 13 | ### Contribute 14 | 15 | If you want to add resources, edit in the Wiki or send at message to the 微博 account. 16 | We would check those updates and keep the Wiki and webpage updated. 17 | 18 | ### Develop 19 | 20 | ``` 21 | $ npm i 22 | $ gulp build 23 | $ git push origin gh-pages 24 | ``` 25 | 26 | ### License 27 | 28 | MIT 29 | 30 | Image from here: https://github.com/facebook/react/wiki -------------------------------------------------------------------------------- /cirru/ga.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /cirru/index.cirru: -------------------------------------------------------------------------------- 1 | doctype 2 | 3 | html 4 | head 5 | title "React Collections" 6 | meta (:charset utf-8) 7 | -- script(:src dist/vendor.min.js) 8 | link 9 | :rel icon 10 | :type image/png 11 | :href ./images/react-logo-1000-transparent.png 12 | @if (@ dev) 13 | @block 14 | link (:rel stylesheet) (:href css/main.css) 15 | -- script (:defer) (:src build/main.js) 16 | @block 17 | link (:rel stylesheet) (:href dist/main.min.css) 18 | -- script (:defer) (:src dist/main.min.js) 19 | body 20 | @partial navbar.cirru 21 | img (:src ./images/react-logo-1000-transparent.png) 22 | section $ @partial about.cirru 23 | section $ @partial resources.cirru 24 | @insert ga.html -------------------------------------------------------------------------------- /cirru/navbar.cirru: -------------------------------------------------------------------------------- 1 | 2 | nav 3 | span React 4 | a (:href #articles) (= Articles) 5 | a (:href #slides) (= Slides) 6 | a (:href #tests) (= Testing) 7 | a (:href #videos) (= Videos) 8 | a (:href #audios) (= Audios) 9 | a (:href #projects) (= Projects) 10 | a (:href #translations) (= Translations) 11 | a 12 | :href https://github.com/react-china/collections/wiki/Collections 13 | = GitHub -------------------------------------------------------------------------------- /cirru/resources.cirru: -------------------------------------------------------------------------------- 1 | 2 | article 3 | #articles 4 | header Articles 5 | 6 | .post $ a (:target _blank) 7 | :href http://blog.andyet.com/2014/08/13/opinionated-rundown-of-js-frameworks 8 | = "Opinionated Rundown of JS Frameworks" 9 | .post $ a (:target _blank) 10 | :href http://www.kevindangoor.com//2014/05/simplifying-code-with-react/ 11 | = "Simplifying Code with React" 12 | .post $ a (:target _blank) 13 | :href http://www.kevindangoor.com/2014/09/intro-to-the-new-brackets-project-tree/ 14 | = "The New React-based Brackets Project Tree" 15 | .post $ a (:target _blank) 16 | :href http://dev.alexishevia.com/2014/08/isomorphic-apps-with-backbonejs-and.html 17 | = "Isomorphic apps with Backbone.js and React" 18 | .post $ a (:target _blank) 19 | :href http://blog.risingstack.com/from-angularjs-to-react-the-isomorphic-way/ 20 | = "From AngularJS to React: the isomorphic way" 21 | .post $ a (:target _blank) 22 | :href http://blog.krawaller.se/posts/a-react-js-case-study/ 23 | = "A React.js case study" 24 | .post $ a (:target _blank) 25 | :href http://www.code-experience.com/avoiding-event-chains-in-single-page-applications/ 26 | = "Avoiding Event Chains in Single Page Applications" 27 | .post $ a (:target _blank) 28 | :href http://christianalfoni.github.io/javascript/2014/08/20/react-js-and-flux.html 29 | = "React JS and FLUX" 30 | .post $ a (:target _blank) 31 | :href http://www.quora.com/Pete-Hunt/Posts/React-Convincing-the-Boss 32 | = "React: Convincing the Boss" 33 | .post $ a (:target _blank) 34 | :href https://hacks.mozilla.org/2014/08/browserify-and-gulp-with-react/ 35 | = "Browserify and Gulp with React" 36 | .post $ a (:target _blank) 37 | :href http://wiredcraft.com/posts/2014/08/20/why-we-may-ditch-angularjs-for-react.html 38 | = "Why We May Ditch AngularJS For React" 39 | .post $ a (:target _blank) 40 | :href http://noelwelsh.com/programming/2014/08/17/angularjs-vs-react/ 41 | = "AngularJS vs React" 42 | .post $ a (:target _blank) 43 | :href http://blog.vjeux.com/2013/javascript/scroll-position-with-react.html 44 | = "Scroll Position with React" 45 | .post $ a (:target _blank) 46 | :href http://stackoverflow.com/a/19808686/883571 47 | = "Why is reactjs so big?" 48 | .post $ a (:target _blank) 49 | :href http://andreypopp.com/posts/2014-08-06-react-style.html 50 | = "React Style, an approach to styling React.js components" 51 | .post $ a (:target _blank) 52 | :href http://www.quora.com/Pete-Hunt/Posts/Facebooks-React-vs-AngularJS-A-Closer-Look 53 | = "Facebook's React vs AngularJS: A Closer Look" 54 | .post $ a (:target _blank) 55 | :href http://www.funnyant.com/reactjs-what-is-it/ 56 | = "React.js and How Does It Fit In With Everything Else?" 57 | .post 58 | a (:target _blank) 59 | :href http://blog.reverberate.org/2014/02/react-demystified.html 60 | = "React Demystified" 61 | a (:target _blank) 62 | :href http://sfau.lt/b5cHvy 63 | = 中文 64 | .post $ a (:target _blank) 65 | :href http://addyosmani.com/blog/component-interop-with-react-and-custom-elements/ 66 | = "Component Interop With React And Custom Elements" 67 | .post $ a (:target _blank) 68 | :href http://www.williambrownstreet.net/blog/2014/04/faster-angularjs-rendering-angularjs-and-reactjs/ 69 | = "Faster AngularJS Rendering (AngularJS and ReactJS)" 70 | .post $ a (:target _blank) 71 | :href http://blog.atom.io/2014/07/02/moving-atom-to-react.html 72 | = "Moving Atom To React" 73 | .post 74 | a (:target _blank) 75 | :href http://calendar.perfplanet.com/2013/diff/ 76 | = "React’s diff algorithm" 77 | a (:target _blank) 78 | :href http://sfau.lt/b5cHRQ 79 | = 翻译 80 | .post $ a (:target _blank) 81 | :href http://n12v.com/2-way-data-binding/?hn 82 | = "Two-Way Data Binding" 83 | .post $ a (:target _blank) 84 | :href http://blog.getprismatic.com/om-sweet-om-high-functional-frontend-engineering-with-clojurescript-and-react/ 85 | = "Om sweet Om: (high-)functional frontend engineering with ClojureScript and React" 86 | .post $ a (:target _blank) 87 | :href http://khan.github.io/react-components/ 88 | = "React Components reusable components by Khan Academy" 89 | .post $ a (:target _blank) 90 | :href http://www.techsonian.net/2014/09/from-backbone-to-react-our-experience-scaling-a-web-application/ 91 | = "From Backbone to React: Our Experience Scaling a Web Application" 92 | .post $ a (:target _blank) 93 | :href http://www.mono-software.com/blog/post/Mono/242/Improving-AngularJS-long-list-rendering-performance-using-ReactJS/ 94 | = "Improving AngularJS long list rendering performance using ReactJS" 95 | .post $ a (:target _blank) 96 | :href http://www.funnyant.com/reactjs-what-is-it 97 | = "React.js and How Does It Fit In With Everything Else?" 98 | .post $ a (:target _blank) 99 | :href http://nicolashery.com/integrating-d3js-visualizations-in-a-react-app/ 100 | = "Integrating D3.js visualizations in a React app" 101 | .post $ a (:target _blank) 102 | :href http://www.syncano.com/getting-started-reactjs-tutorial/ 103 | = "Getting Started with React.js – Tutorial" 104 | .post $ a (:target _blank) 105 | :href http://ianobermiller.com/blog/2014/09/15/react-and-flux-interview 106 | = "React and Flux Interview" 107 | 108 | article 109 | #slides 110 | header Slides 111 | .post $ a (:target _blank) 112 | :href https://docs.google.com/presentation/d/1afMLTCpRxhJpurQ97VBHCZkLbR1TEsRnd3yyxuSQ5YY/preview?sle=true 113 | = "React vs. Ember - Alex Matchneer - EmberNYC meetup - Google Slides" 114 | .post $ a (:target _blank) 115 | :href https://speakerdeck.com/vjeux/why-does-react-scale-jsconf-2014 116 | = "Why does React scale? - JSConf 2014 by vjeux" 117 | 118 | article 119 | #tests 120 | header Testing 121 | .post $ a (:target _blank) 122 | :href http://facebook.github.io/jest/ 123 | = "Jest" 124 | .post $ a (:target _blank) 125 | :href http://maketea.co.uk/2014/05/22/building-robust-web-apps-with-react-part-3.html 126 | = "Building robust web apps with React: Part 3, testing with Jasmine" 127 | .post $ a (:target _blank) 128 | :href https://github.com/securingsincity/react-jest-example 129 | = "react-jest-example" 130 | 131 | article 132 | #videos 133 | header Videos 134 | 135 | .post $ a (:target _blank) 136 | :href https://egghead.io/technologies/react 137 | = "29 React Lessons" 138 | .post 139 | a (:target _blank) 140 | :href https://www.youtube.com/watch?v=eCf5CquV_Bw 141 | = "OSCON 2014 – React's Architecture" 142 | a (:target _blank) 143 | :href https://speakerdeck.com/vjeux/oscon-react-architecture 144 | = Slide 145 | a (:target _blank) 146 | :href http://www.tudou.com/programs/view/KF_vfHfaU6Q/ 147 | = 土豆 148 | .post 149 | a (:target _blank) 150 | :href https://www.youtube.com/watch?v=-DX3vJiqxm4 151 | = "Pete Hunt - The Secrets of React's Virtual DOM (FutureJS 2014)" 152 | a (:target _blank) 153 | :href http://www.tudou.com/programs/view/c-3WCV5W72M/ 154 | = 土豆 155 | a (:target _blank) 156 | :href http://pan.baidu.com/s/1o64ujEU 157 | = 百度云 158 | .post 159 | a (:target _blank) 160 | :href http://vimeo.com/96639841 161 | = "Christian Johansen - Functional UI Programming" 162 | a (:target _blank) 163 | :href http://www.tudou.com/programs/view/qNkiHLqihEo/ 164 | = 土豆 165 | .post 166 | a (:target _blank) 167 | :href http://www.youtube.com/watch?v=x7cQ3mrcKaY#t=1322 168 | = "Pete Hunt: React: Rethinking best practices -- JSConf EU 2013" 169 | a (:target _blank) 170 | :href http://www.slideshare.net/floydophone/react-preso-v2 171 | = Slide 172 | .post 173 | a (:target _blank) 174 | :href https://www.youtube.com/watch?v=IVvHPPcl2TM 175 | = "'React- RESTful UI Rendering' by Pete Hunt" 176 | a (:target _blank) 177 | :href http://www.tudou.com/programs/view/ivImKNig9-k/ 178 | = "土豆" 179 | .post 180 | a (:target _blank) 181 | :href www.youtube.com/watch?v=MivXyEtwK24 182 | = "Refactoring to React" 183 | a (:target _blank) 184 | :href http://www.tudou.com/programs/view/muWsme1klKY/?bid=03&pid=02&resourceId=56179749_03_0_02 185 | = 土豆 186 | .post 187 | a (:target _blank) 188 | :href www.youtube.com/watch?v=h3KksH8gfcQ 189 | = "Mountain West JavaScript 2014 - Be Predictable, Not Correct. by Pete Hunt" 190 | a (:target _blank) 191 | :href http://www.tudou.com/programs/view/IYZou6G4MmY/?bid=03&pid=02&resourceId=56179749_03_0_02 192 | .post 193 | a (:target _blank) 194 | :href www.youtube.com/watch?v=qqVbr_LaCIo 195 | = "Pete Hunt: High performance functional programming with React and Meteor" 196 | a (:target _blank) 197 | :href http://www.tudou.com/programs/view/9TXaYMeFTDA/?bid=03&pid=02&resourceId=56179749_03_0_02 198 | = "土豆" 199 | 200 | article 201 | #audios 202 | header Audios 203 | 204 | .post 205 | a (:target _blank) 206 | :href http://javascriptjabber.com/073-jsj-react-with-pete-hunt-and-jordan-walke/ 207 | = "073 JSJ React with Pete Hunt and Jordan Walke" 208 | a (:target _blank) 209 | :href http://pan.baidu.com/s/1nt9e7bj 210 | = 百度云 211 | .post $ a (:target _blank) 212 | :href http://codewinds.com/podcast/004.html 213 | = "CW 004 : Pete Hunt, Software Engineer for Facebook, discussing Facebook's open source js UI framework, React" 214 | 215 | article 216 | #projects 217 | header Projects 218 | 219 | .post $ a (:target _blank) 220 | :href http://sanderspies.github.io/react-material/ 221 | = "React Material" 222 | .post $ a (:target _blank) 223 | :href https://gcanti.github.io/resources/tcomb-react-bootstrap/playground/playground.html 224 | = "Write your React.js components with safety and easy debugging" 225 | .post $ a (:target _blank) 226 | :href https://medium.com/@josephsavona/valuable-a-data-model-for-react-1b8868493bf6 227 | = "Valuable — A Data Model for React" 228 | .post $ a (:target _blank) 229 | :href http://react-bootstrap.github.io/ 230 | = "React Bootstrap" 231 | .post $ a (:target _blank) 232 | :href https://github.com/gaearon/react-hot-loader 233 | = "react-hot-loader" 234 | .post $ a (:target _blank) 235 | :href https://github.com/kriasoft/react-starter-kit 236 | = "Facebook React Starter Kit" 237 | .post $ a (:target _blank) 238 | :href https://github.com/Granze/react-starterify 239 | = "React Starterify" 240 | .post $ a (:target _blank) 241 | :href https://github.com/ThomasDeutsch/react-webpack 242 | = "react-webpack" 243 | .post $ a (:target _blank) 244 | :href https://github.com/kriasoft/react-starter-kit 245 | = "Facebook React Starter Kit" 246 | .post $ a (:target _blank) 247 | :href https://github.com/japgolly/scalajs-react 248 | = "scalajs-react: A guilty affair between Scala.js and Facebook's React" 249 | 250 | article 251 | #translations 252 | header "Chinese Translations" 253 | 254 | .post $ a (:target _blank) 255 | :href http://blog.segmentfault.com/jiyinyiyong/1190000000620589 256 | = "React: Flux 是怎样工作的" 257 | .post $ a (:target _blank) 258 | :href http://blog.segmentfault.com/jiyinyiyong/1190000000615491 259 | = "react-router README 中文" 260 | .post $ a (:target _blank) 261 | :href http://blog.segmentfault.com/jiyinyiyong/1190000000607895 262 | = "React 快速介绍" 263 | .post $ a (:target _blank) 264 | :href http://blog.csdn.net/rsspub?viewmode=contents 265 | = "React中文教程" -------------------------------------------------------------------------------- /coffee/main.coffee: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/react-china/collections/28c8eae960d3d154aa8b0be588fbd2079b80d583/coffee/main.coffee -------------------------------------------------------------------------------- /css/main.css: -------------------------------------------------------------------------------- 1 | 2 | body { 3 | margin: 0; 4 | font-family: Optima; 5 | background: #f9f9f9; 6 | } 7 | 8 | article.about { 9 | margin-top: 140px; 10 | } 11 | 12 | body * { 13 | box-sizing: border-box; 14 | } 15 | 16 | body > img { 17 | position: fixed; 18 | right: 0; 19 | z-index: -1; 20 | top: 0; 21 | } 22 | 23 | .post a { 24 | text-decoration: none; 25 | margin-right: 1em; 26 | } 27 | 28 | body > section { 29 | width: 80%; 30 | font-size: 16px; 31 | line-height: 2em; 32 | margin: 0 auto; 33 | } 34 | 35 | header { 36 | font-size: 30px; 37 | line-height: 4em; 38 | padding-top: 70px; 39 | } 40 | 41 | body > nav { 42 | background: #222; 43 | height: 50px; 44 | color: #00d8ff; 45 | line-height: 50px; 46 | position: fixed; 47 | width: 100%; 48 | top: 0; 49 | padding: 0 4em; 50 | } 51 | 52 | body > nav a { 53 | color: #aaa; 54 | text-decoration: none; 55 | margin-left: 1em; 56 | } 57 | 58 | body > nav a:hover { 59 | color: #fafafa; 60 | } -------------------------------------------------------------------------------- /dist/main.min.css: -------------------------------------------------------------------------------- 1 | body{margin:0;font-family:Optima;background:#f9f9f9}article.about{margin-top:140px}body *{-moz-box-sizing:border-box;box-sizing:border-box}body>img{position:fixed;right:0;z-index:-1;top:0}.post a{text-decoration:none;margin-right:1em}body>section{width:80%;font-size:16px;line-height:2em;margin:0 auto}header{font-size:30px;line-height:4em;padding-top:70px}body>nav{background:#222;height:50px;color:#00d8ff;line-height:50px;position:fixed;width:100%;top:0;padding:0 4em}body>nav a{color:#aaa;text-decoration:none;margin-left:1em}body>nav a:hover{color:#fafafa} -------------------------------------------------------------------------------- /dist/main.min.js: -------------------------------------------------------------------------------- 1 | !function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n?n:r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 11 | filetree = require 'make-filetree' 12 | filetree.make '.', 13 | coffee: 14 | 'main.coffee': '' 15 | css: 16 | 'main.css': '' 17 | cirru: 18 | 'index.cirru': '' 19 | 'README.md': '' 20 | build: {} 21 | 22 | gulp.task 'watch', -> 23 | plumber = require 'gulp-plumber' 24 | coffee = require 'gulp-coffee' 25 | reloader = require 'gulp-reloader' 26 | watch = require 'gulp-watch' 27 | html = require 'gulp-cirru-html' 28 | transform = require 'vinyl-transform' 29 | browserify = require 'browserify' 30 | reloader.listen() 31 | 32 | watch glob: 'cirru/*.cirru', emitOnGlob: no, (files) -> 33 | gulp 34 | .src 'cirru/index.cirru' 35 | .pipe plumber() 36 | .pipe html(data: {dev: dev}) 37 | .pipe gulp.dest('./') 38 | .pipe reloader(project) 39 | return files 40 | 41 | watch glob: 'coffee/**/*.coffee', emitOnGlob: no, (files) -> 42 | files 43 | .pipe plumber() 44 | .pipe (coffee bare: yes) 45 | .pipe (gulp.dest 'build/js/') 46 | 47 | watch glob: 'build/js/**/*.js', emitOnGlob: no, (files) -> 48 | gulp 49 | .src './build/js/main.js' 50 | .pipe plumber() 51 | .pipe transform (filename) -> 52 | b = browserify filename, debug: yes 53 | b.external library for library in libraries 54 | b.bundle() 55 | .pipe gulp.dest('build/') 56 | .pipe reloader(project) 57 | return files 58 | 59 | watch glob: ['server.coffee', 'src/**/*.coffee'], emitOnGlob: no, (files) -> 60 | wait = require 'gulp-wait' 61 | files 62 | .pipe wait(800) 63 | .pipe reloader(project) 64 | 65 | gulp.task 'js', -> 66 | browserify = require 'browserify' 67 | source = require 'vinyl-source-stream' 68 | b = browserify debug: dev 69 | b.add './build/js/main' 70 | b.external library for library in libraries 71 | b.bundle() 72 | .pipe source('main.js') 73 | .pipe gulp.dest('build/') 74 | 75 | gulp.task 'coffee', -> 76 | coffee = require 'gulp-coffee' 77 | gulp 78 | .src 'coffee/**/*.coffee', base: 'coffee/' 79 | .pipe (coffee bare: yes) 80 | .pipe (gulp.dest 'build/js/') 81 | 82 | gulp.task 'html', -> 83 | html = require 'gulp-cirru-html' 84 | gulp 85 | .src 'cirru/index.cirru' 86 | .pipe html(data: {dev: dev}) 87 | .pipe gulp.dest('.') 88 | 89 | gulp.task 'jsmin', -> 90 | source = require 'vinyl-source-stream' 91 | uglify = require 'gulp-uglify' 92 | buffer = require 'vinyl-buffer' 93 | browserify = require 'browserify' 94 | b = browserify debug: no 95 | b.add './build/js/main' 96 | b.external library for library in libraries 97 | b.bundle() 98 | .pipe source('main.min.js') 99 | .pipe buffer() 100 | .pipe uglify() 101 | .pipe gulp.dest('dist/') 102 | 103 | gulp.task 'vendor', -> 104 | source = require 'vinyl-source-stream' 105 | uglify = require 'gulp-uglify' 106 | buffer = require 'vinyl-buffer' 107 | browserify = require 'browserify' 108 | b = browserify debug: no 109 | b.require library for library in libraries 110 | jsbuffer = b.bundle() 111 | .pipe source('vendor.min.js') 112 | .pipe buffer() 113 | if dev 114 | jsbuffer 115 | .pipe gulp.dest('dist/') 116 | else 117 | jsbuffer 118 | .pipe uglify() 119 | .pipe gulp.dest('dist/') 120 | 121 | gulp.task 'prefixer', -> 122 | prefixer = require 'gulp-autoprefixer' 123 | gulp 124 | .src 'css/**/*.css', base: 'css/' 125 | .pipe prefixer() 126 | .pipe gulp.dest('build/css/') 127 | 128 | gulp.task 'cssmin', -> 129 | cssmin = require 'gulp-cssmin' 130 | gulp 131 | .src 'build/css/main.css' 132 | .pipe cssmin() 133 | .pipe rename(suffix: '.min') 134 | .pipe gulp.dest('dist/') 135 | 136 | gulp.task 'clean', -> 137 | rimraf = require 'gulp-rimraf' 138 | gulp 139 | .src ['build/', 'dist/'] 140 | .pipe rimraf() 141 | 142 | gulp.task 'dev', -> 143 | sequence 'clean', ['html', 'coffee', 'vendor'], 'js' 144 | 145 | gulp.task 'build', -> 146 | dev = no 147 | sequence 'clean', 148 | ['coffee', 'html'], ['jsmin', 'vendor'], 149 | 'prefixer', 'cssmin' 150 | 151 | gulp.task 'rsync', -> 152 | rsync = require('rsyncwrapper').rsync 153 | rsync 154 | ssh: yes 155 | src: '.' 156 | recursive: true 157 | args: ['--verbose'] 158 | dest: "tiye:~/repo/react-collections" 159 | deleteAll: yes 160 | exclude: [ 161 | 'bower_components/' 162 | 'node_modules/' 163 | 'cirru/' 164 | '.gitignore' 165 | '.npmignore' 166 | 'README.md' 167 | 'coffee/' 168 | 'css/' 169 | 'build/' 170 | 'gulpfile.coffee' 171 | '*.json' 172 | ] 173 | , (error, stdout, stderr, cmd) -> 174 | if error? then throw error 175 | if stderr? 176 | console.error stderr 177 | else 178 | console.log cmd -------------------------------------------------------------------------------- /images/react-logo-1000-transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/react-china/collections/28c8eae960d3d154aa8b0be588fbd2079b80d583/images/react-logo-1000-transparent.png -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | React Collections
Articles
Opinionated Rundown of JS Frameworks
Simplifying Code with React
The New React-based Brackets Project Tree
Isomorphic apps with Backbone.js and React
From AngularJS to React: the isomorphic way
A React.js case study
Avoiding Event Chains in Single Page Applications
React JS and FLUX
React: Convincing the Boss
Browserify and Gulp with React
Why We May Ditch AngularJS For React
AngularJS vs React
Scroll Position with React
Why is reactjs so big?
React Style, an approach to styling React.js components
Facebook's React vs AngularJS: A Closer Look
React.js and How Does It Fit In With Everything Else?
React Demystified中文
Component Interop With React And Custom Elements
Faster AngularJS Rendering (AngularJS and ReactJS)
Moving Atom To React
React’s diff algorithm翻译
Two-Way Data Binding
Om sweet Om: (high-)functional frontend engineering with ClojureScript and React
React Components reusable components by Khan Academy
From Backbone to React: Our Experience Scaling a Web Application
Improving AngularJS long list rendering performance using ReactJS
React.js and How Does It Fit In With Everything Else?
Integrating D3.js visualizations in a React app
Getting Started with React.js – Tutorial
React and Flux Interview
-------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-collections", 3 | "version": "0.0.1", 4 | "main": "index.js", 5 | "scripts": { 6 | "test": "echo \"Error: no test specified\" && exit 1" 7 | }, 8 | "author": "jiyinyiyong", 9 | "license": "MIT", 10 | "devDependencies": { 11 | "browserify": "^5.10.1", 12 | "coffee-script": "^1.7.1", 13 | "gulp": "^3.8.7", 14 | "gulp-autoprefixer": "0.0.9", 15 | "gulp-cirru-html": "0.0.3", 16 | "gulp-coffee": "^2.1.2", 17 | "gulp-cssmin": "^0.1.6", 18 | "gulp-plumber": "^0.6.4", 19 | "gulp-reloader": "0.0.1", 20 | "gulp-rename": "^1.2.0", 21 | "gulp-rimraf": "^0.1.0", 22 | "gulp-uglify": "^0.3.1", 23 | "gulp-wait": "0.0.2", 24 | "gulp-watch": "^0.6.9", 25 | "make-filetree": "0.0.2", 26 | "rsyncwrapper": "^0.4.1", 27 | "run-sequence": "^0.3.6", 28 | "vinyl-buffer": "0.0.0", 29 | "vinyl-source-stream": "^0.1.1", 30 | "vinyl-transform": "0.0.1" 31 | }, 32 | "description": "A collections of react resources", 33 | "dependencies": {}, 34 | "repository": { 35 | "type": "git", 36 | "url": "https://github.com/react-china/collections.git" 37 | }, 38 | "bugs": { 39 | "url": "https://github.com/react-china/collections/issues" 40 | }, 41 | "homepage": "https://github.com/react-china/collections" 42 | } 43 | --------------------------------------------------------------------------------