Beyond Redux and MobX - A Functional approach to building React Apps
Submitted by Amit Erandole on Tuesday, 7 November 2017
Section: Workshops Technical level: Advanced
This talk presents a functional approach to state management using Andrew Clark’s Recompose toolset.
Do you know what kind of animal a function really is? I will show you powerful composition patterns that will blow your mind and get you started with thinking about state management as a pattern of component composition.
You will learn how you to add and remove state from your component without writing complex object heirarchies and manually managing state.
If you’ve been curious about writing powerful stateless components that can work with the React lifecycle, I’ll show you a way to ‘lift’ state into functional wrappers and keep your components focused on single responsibilities and free of complex logical responsibilities.
This workshop introduces a powerful set of practices to create stateless functional components that separate logic, data and presentation from your components.
Here is a preliminary outline:
- How functions break down user interfaces and programs
- How functions can be glued to create new functions
- How functional composition works
- Viewing React components as pure functions
- Composing React components with Ramda.js
- Injecting State with Recompose or Statty
- Injecting event handlers with Recompose
- Managing lifecycle events with Recompose
- Condition free components
- How functions make testing easier
Just have create react app installed with vscode
Writer, Designer and Full Stack Developer
Trainer and Software Architect for React/Redux Projects
Amit builds websites, web applications and apis for mobile applications. He specializes in creating digital platforms for lead generation projects in the b2b online marketing space.
Amit also enjoy writing plugins and extensions for CMSes ( wordpress, craft cms) to help business websites integrate with third-party CRM and Analytics platform services.
He is also currently obsessed with functional programming and loves the functional side of the React stack. He is currently expanding his perspective on programming by learning elm and clojure.