RxJS is the best way to manage asynchronicity in Redux, and results in many wins for both the application performance as well as developer happiness.
About the Workshop
Note: While you will learn RxJS in the context of a React/Redux app, RxJS is platform-agnostic and can be used with Angular, Ember, etc.
Take your React apps to the next level
RxJS & Redux-Observable provide:
- Complex side-effects and asynchronous data-fetching
- Declarative AJAX cancellation
- Debounced or throttled form submissions
- Isolate redux side effects into easily testable and idempotent functions
- Improved server-side rendering developer experience
This is thanks in large part to observables. Observables are similar to promises with a few key improvements. With observables, you get:
- Success, failure, and completion event streams
- Apply familiar array methods to event handlers
- Composable event handlers
- Return any number of values over any amount of time
- Declarative cancellation
- Laziness -- they won't do anything until you subscribe to them
1. RxJS Principles
- Array methods and their observable counterparts
- flatMap & family
- Declarative cancellation
- What are Epics
- Moving logic from react components into Epics
- Refactoring Redux-Thunk into a Redux-Epic
- Server-side Rendering and isomorphic data fetching
We will cover the above lessons in the context of a full-stack production e-commerce application.
Berkeley is the CTO of freecodecamp.com, a free online community for learning full-stack web development where students garner real-world experience by engineering solutions for nonprofit companies. He has been programming with React for over two years, and is the author of Redux-Epic, a library built to do better async and server-side rendering in React with RxJS Observables. He was recently invited to the official Redux-Observable repo to introduce a supported feature for server-side rendering.
Berkeley is also the co-organizer of the San Francisco-based Meetup group Real World React, which features talks and workshops on using React in real-world, production applications. As an instructor at Real World React, he consults individuals and businesses looking to become experts in the React ecosystem. He has trained engineers from Twilio, NerdWallet, OpenTable, Tesla, Amazon and more.
Mac users: Xcode installed
Node.js 6.x or higher
MongoDB 3.x or higher
This workshop will take place at Reddit's HQ in downtown San Francisco.
Refund requests will be honored if requested at least 48 hours before the workshop is scheduled to begin.
Reactathon is a week of events leading up to Facebook's React Conf, organized by Real World React. See https://www.reactathon.com for more info.