Skip to content

Commit

Permalink
Upates, 2017-07-23
Browse files Browse the repository at this point in the history
  • Loading branch information
markerikson committed Jul 24, 2017
1 parent e3ab7f7 commit 2a92a31
Show file tree
Hide file tree
Showing 13 changed files with 89 additions and 1 deletion.
4 changes: 4 additions & 0 deletions basic-concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,10 @@
- **How to Learn React: A Five-Step Plan**
https://www.lullabot.com/articles/how-to-learn-react
A good set of suggested steps to follow and tools to use for learning React and Redux.

- **Ten Things a Serious JavaScript Developer Should Learn**
https://benmccormick.org/2017/07/19/ten-things-javascript/
A well-written, excellent collection of advice for mid-level JS developers, listing important topics that they should be familiar with.


#### General Suggestions for Learning
Expand Down
5 changes: 5 additions & 0 deletions es6-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@
- **ES6 Katas: Learn ES6 by doing it**
http://es6katas.org/
Sets of exercises to help you learn ES6 features and syntax.

- **Tiny ES6 Notebook**
https://github.com/mattharrison/Tiny-ES6-Notebook
A large list of notes, examples, and discussion on how to use the features in ES6


#### In-Depth Details

Expand Down
7 changes: 7 additions & 0 deletions immutable-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,10 @@
https://medium.com/front-end-hacking/why-i-dont-use-immutable-js-with-redux-db05004f436
Thoughts on the pros and cons of using Immutable.js in a Redux app

- **Using Immutable.js with Redux**
https://medium.com/front-end-hacking/using-immutable-js-with-redux-ba89025e45e2
A follow-up to the previous article, with several examples of how to properly use Immutable.js with Redux

- **Should I use Immutable.js with Redux?**
https://medium.com/@fastphrase/should-i-use-immutablejs-with-redux-58f88d6fd81e
A detailed list of pros and cons for using Immutable.js in a Redux app
Expand All @@ -144,3 +148,6 @@
https://medium.com/@drboolean/lenses-with-immutable-js-9bda85674780
Discusses how "lenses" can be used to dig into data structures and update them in an immutable way, and how to define lenses that work on Immutable.js objects.

- **You're missing out on ImmutableJS Records**
https://medium.com/@ahmadbamieh/immutablejs-records-bd369137da06
An introduction to the Immutable.js Record type, and how it can be used to define data types
13 changes: 13 additions & 0 deletions pros-cons-discussion.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@
https://calbucci.com/why-im-betting-on-react-native-for-my-next-startup-3b8ff5ae03e4
A startup product lead gives several reasons why he's using React Native for their large app, including uniformity of experience, testing, recruiting, and scalability.

- **Why Choose React?**
https://www.lullabot.com/articles/why-choose-react
Some high-level thoughts on the benefits of choosing React, including proven use at scale, influence on the community, versatility, and that it's "just Javascript".


#### Redux/Flux Comparisons

Expand Down Expand Up @@ -256,18 +260,27 @@ similar structures in ClojureScript.
http://lu.is/blog/2016/10/31/reacts-license-necessary-and-open/
Analysis from a lawyer on the merits of React's patent license, and whether it still qualifes as "Open Source".

- **React, Facebook, and the Revocable Patent License: Why it's a Paper Tiger**
https://medium.com/@dwalsh.sdlr/react-facebook-and-the-revokable-patent-license-why-its-a-paper-25c40c50b562
Analysis of the React patent license from an IP lawyer, in response to the latest set of discussions and arguments online

- **Comments from other companies on the acceptability of the license**
https://wptavern.com/automattic-will-continue-to-use-react-js-in-calypso-despite-patent-clause
https://twitter.com/paul_irish/status/754864479460929536
https://twitter.com/palmerj3/status/766236192669073412
https://blogs.windows.com/buildingapps/2016/04/13/react-native-on-the-universal-windows-platform/
Comments from developers at Automattic, Google, Spotify, and Microsoft, indicating they're fine with using React

- **"Comment on the Apache Foundation's statement about Facebook's BSD+Patents license"**
https://www.reddit.com/r/programming/comments/6nnxir/apache_foundation_bans_use_of_facebook_bsdpatents/dkb3v4p/?context=3
One of the best layman's summaries I've seen about what the patents file actually means and is intended to do.

- **Further discussions**
https://news.ycombinator.com/item?id=12108273
https://news.ycombinator.com/item?id=12108526
https://vimeo.com/170598656#comment_14699807
https://github.com/facebook/react/issues/7293
https://news.ycombinator.com/item?id=12597488
https://www.reddit.com/r/reactjs/comments/6nx6jv/is_anyone_here_concerned_about_the_recent/
More discussion threads regarding the PATENTS license

21 changes: 21 additions & 0 deletions react-component-patterns.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,10 @@
https://www.robinwieruch.de/react-provider-pattern-context/
Walks through the concepts and implementation of a "Provider" component that makes data available to deeply nested children, similar to the ones that come with Redux and MobX

- **Passing Data Between React Components**
https://medium.com/@ruthmpardee/passing-data-between-react-components-103ad82ebd17
Some short examples of how to pass data between parents, children, and siblings.


#### Component Categories

Expand Down Expand Up @@ -243,6 +247,15 @@
https://hackernoon.com/code-reuse-using-higher-order-hoc-and-stateless-functional-components-in-react-and-react-native-6eeb503c665
An exploration of how to refactor code to extract functional components and higher-order components for improved code reuse, including reusing the same components in both React and React Native apps.

- **Reusable state for React UI components**
https://medium.com/@efreyreg/reusable-state-for-react-ui-components-e38c5af40be4
An example of taking a component that has both state, logic, and presentation, and extracting the logic and presentation into separate components. Also demonstrates using a Redux-like approach to update logic without actually using Redux.

- **Extracting Logic from React Components**
https://javascriptplayground.com/blog/2017/07/react-extracting-logic/
Demonstrates taking a component that includes some logic for formatting a value, and refactoring it to extract out the formatting logic into separate functions.



#### Higher-Order Components

Expand Down Expand Up @@ -426,6 +439,10 @@
https://swizec.com/blog/using-react-in-the-real-world/swizec/6710
Demonstrates how to wrap up a React component as a jQuery plugin for integration with non-React apps.

- **Using D3 and React Together to Make Visualizations with TypeScript**
https://spin.atomicobject.com/2017/07/20/d3-react-typescript/
Examples of some possible approaches to using D3 inside of React, including use of refs and components.


#### Modal Dialogs

Expand Down Expand Up @@ -486,6 +503,10 @@
https://youtu.be/SQtrgiLy3Fo
A screencast that introduces the Recompose library and explains some of its useful tools like `withState` and `branch`.

- **Destroy All Classes: Turn React Components Inside Out with Functional Programming**
https://www.bignerdranch.com/blog/destroy-all-classes-turn-react-components-inside-out-with-functional-programming/
Demonstrates progressively refactoring a class component with logic into separate functional components, and then tying them together with Recompose


#### Other Component Patterns

Expand Down
5 changes: 5 additions & 0 deletions react-implementation.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,11 @@
https://github.com/lukebelliveau/deact
A repository for learning about how React works internally. Has a link to a slide set that explains the concepts, and has branches for the various lessons.

- **React Internals**
http://www.mattgreer.org/articles/react-internals-part-one-basic-rendering/
http://www.mattgreer.org/articles/react-internals-part-two-componentWillMount-and-componentDidMount/
http://www.mattgreer.org/articles/react-internals-part-three-basic-updating/
A 5-part series that will recreate React from the ground up, illustrating how it works along the way.


#### Implementation and Internals
Expand Down
4 changes: 4 additions & 0 deletions react-redux-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,10 @@
https://daveceddia.com/snapshot-testing-react-with-jest/
An excellent explanation of what "snapshot testing" is, and how to apply it to test React components using Jest

- **React and Redux Testing with Jest: How Some Jokers Learned to Take Snapshots**
https://dev.bleacherreport.com/react-and-redux-testing-with-jest-how-some-jokers-learned-to-take-snapshots-c186c7e419e6
Discussion of how Jest snapshot tests can be used to replace some manually-written tests for both React components and Redux logic.


#### Redux

Expand Down
4 changes: 4 additions & 0 deletions react-routing.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,10 @@
https://blog.boon.gl/2017/06/29/routes-as-state-in-react.html
Some thoughts on why tracking route data as state might make sense, and some examples of how to approach that.

- **Redux-First Router data fetching; solving the 80% use case for async middleware**
https://medium.com/faceyspacey/redux-first-router-data-fetching-solving-the-80-use-case-for-async-middleware-14529606c262
An extended article discussing "component-first" vs "route-first" data fetching approaches, and how the author's library helps solve the "route-first" approach.


#### Authentication

Expand Down
6 changes: 5 additions & 1 deletion react-state-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,8 @@

- **Stack Overflow: "Do I need to use `setState(function)` overload?"**
http://stackoverflow.com/questions/43428456/do-i-need-to-use-setstatefunction-overload-in-this-case/43440790#43440790
Dan Abramov gives a great in-depth answer explaining when and why to pass an updater function to `setState` instead of passing an object
Dan Abramov gives a great in-depth answer explaining when and why to pass an updater function to `setState` instead of passing an object

- **"`setState` doesn't actually care whether you've mutated your data or not"**
https://news.ycombinator.com/item?id=14706862
A couple comments from myself, talking about how `setState` actually behaves in practice in relation to mutation and immutability.
8 changes: 8 additions & 0 deletions redux-side-effects.md
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,14 @@
https://medium.com/grey-frogs/writing-more-testable-code-with-redux-saga-c1561f995225
Gives examples of some sagas for managing complex async query handling logic, and how to use the redux-saga-test-plan library to help test their behavior.

- **Analytics on easy mode with Redux-Saga**
https://goshakkk.name/analytics-easy-redux-saga/
Quick examples of how to use Redux-Saga to implement analytics handling.

- **Modelling common patterns with redux-saga**
https://medium.com/@chanakyabhardwaj/modelling-common-patterns-with-redux-saga-464a380a37ce
Examples of saga logic patterns for behaviors like "first-amongst-these", "keep-doing-until", and "step-by-step".


#### Other Side Effect Approaches

Expand Down
4 changes: 4 additions & 0 deletions redux-techniques.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,10 @@
https://medium.com/@danielkagan/high-order-reducers-it-just-sounds-scary-2b9e5dbfc705
Explains how reducers can be composed like Lego bricks to create reusable and testable reducer logic.

- **Functional Redux Reducers with Ramda**
https://alligator.io/react/functional-redux-reducers-with-ramda/
Shows how to write a somewhat complex Redux reducer using only composition of functions from the Ramda library




Expand Down
4 changes: 4 additions & 0 deletions redux-tutorials.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,10 @@
https://medium.com/front-end-hacking/redux-by-example-part-4-474c76eec86d
A 4-part series that illustrates core Redux concepts via a series of small example repos, with explanations of the source and concepts in the articles.

- **React-Redux Cheatsheet**
https://github.com/uanders/react-redux-cheatsheet
A diagram that tries to illustrate all the various pieces of the React+Redux API and workflow


#### Project-Based Tutorials

Expand Down
5 changes: 5 additions & 0 deletions webpack-advanced-techniques.md
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,11 @@
- **Hot reload all the things!**
https://hackernoon.com/hot-reload-all-the-things-ec0fed8ab0
A tutorial that shows how to use Webpack and HMR to hot-reload both front-end and back-end code for faster development.

- **How to Hot-Load React Components in 7 Days**
https://medium.com/@antonkorzunov/how-to-hot-load-react-component-in-7-days-part-1-webpack-d8b77eea61eb
https://codeburst.io/how-to-hot-load-react-component-in-7-days-part-2-react-28ce2b61d0c7
A 2-part article that discusses how to set up plain HMR and add React-Hot-Loader, as well as many of the complexities of using RHL.


#### Other Tips and Examples
Expand Down

0 comments on commit 2a92a31

Please sign in to comment.