SlideShare une entreprise Scribd logo
1  sur  78
Better React
state management
with Redux
Maurice de Beijer
@mauricedb
@react_tutorial
Workshop
goal
 Short recap: what is React?
 Learn the three principals of Redux
 Use the different Redux components
 Unit testing Redux code
 Adding Redux to a React application
 Use Redux middleware
© ABL - The Problem Solver 2
 Maurice de Beijer
 The Problem Solver
 Microsoft Azure MVP
 Freelance developer/instructor
 Twitter: @mauricedb and @React_Tutorial
 Web: http://www.TheProblemSolver.nl
 E-mail: maurice.de.beijer@gmail.com
3
Follow along
 Git repository: https://github.com/mauricedb/nitflex-redux
 Slides: http://bit.ly/react-redux-workshop
© ABL - The Problem Solver 4
Type it out
by hand?
© ABL - The Problem Solver 5
“Typing it drills it into your brain
much better than simply copying
and pasting it.You're forming new
neuron pathways.Those pathways
are going to help you in the future.
Help them out now!”
Prerequisites
Install Node & NPM
© ABL - The Problem Solver 6
Install
Node.js &
NPM
© ABL - The Problem Solver 7
Short recap
What is React?
© ABL - The Problem Solver 8
React
© ABL - The Problem Solver 9
“React is a JavaScript library for
building user interfaces”
- Facebook -
React
features
 React uses a component based architecture
 Components are written using the JSX syntax
 React likes a one way data flow
 React uses a virtual DOM
© ABL - The Problem Solver 10
React
Component
© ABL - The Problem Solver 11
Nitflex
The sample application
© ABL - The Problem Solver 12
Nitflex
© ABL - The Problem Solver 13
Main
components
© ABL - The Problem Solver 14
Application
Login Main Page
Header Billboard Genre List
Genre*
Movie*
Expanded
Movie
Playing
Movie
Stateful
components
© ABL - The Problem Solver 15
Application
Login Main Page
Header Billboard Genre List
Genre*
Movie*
Expanded
Movie
Playing
Movie
Clone Nitflex
&
NPM install
© ABL - The Problem Solver 16
Redux
© ABL - The Problem Solver 17
Redux
© ABL - The Problem Solver 18
“Redux is a predictable state
container for JavaScript apps”
- Dan Abramov -
Three
principals of
Redux
 Single source of truth
 State is read-only
 Changes are made with pure functions
© ABL - The Problem Solver 19
Single source
of truth
 The application state is stored in a single location
 Do not scatter the state over lots of components
 A single state location makes it easier to reason
about and debug your application
© ABL - The Problem Solver 20
State is
read-only
 The state objects are never changed by the
application
 Every state change is the result of an action being
dispatched to the store
 This action describes the intended state change
© ABL - The Problem Solver 21
Changes
with pure
functions
 Reducers are pure functions that take the current
state and an action as input and return a new state
object
 The previous state object is never modified
© ABL - The Problem Solver 22
UI versus
App state
 Redux should be used for application state.
 Do not store UI state in Redux!
© ABL - The Problem Solver 23
Login
example
© ABL - The Problem Solver 24
Installing
Redux
© ABL - The Problem Solver 25
ReduxComponents
© ABL - The Problem Solver 26
Redux
Components
 Actions
 Reducers
 The store
© ABL - The Problem Solver 27
Login
action
© ABL - The Problem Solver 28
Login
reducer
© ABL - The Problem Solver 29
combineReducers
© ABL - The Problem Solver 30
Unit testing
© ABL - The Problem Solver 31
Unit test the
action creator
© ABL - The Problem Solver 32
Unit test the
reducer
© ABL - The Problem Solver 33
Redux and React
© ABL - The Problem Solver 34
Redux
and
React
 The NPM react-redux package contains the React
bindings for Redux
 The <Provider> component makes the Redux
store available
 The connect() function connects React components
to the Redux store use in <Provider>
© ABL - The Problem Solver 35
Create store
© ABL - The Problem Solver 36
Dispatch
login action
© ABL - The Problem Solver 37
Get the user
from the store
© ABL - The Problem Solver 38
Cleanup
 app-container.jsx
 Remove user and loginAsUser()
 app-presentation.jsx
 Remove loginAsUser()
© ABL - The Problem Solver 39
Redux Middleware
© ABL - The Problem Solver 40
Redux
Middleware
© ABL - The Problem Solver 41
“Redux middleware provides a
third-party extension point between
dispatching an action, and the
moment it reaches the reducer”
- Dan Abramov -
Installing
redux-thunk
© ABL - The Problem Solver 42
Redux-Thunk
© ABL - The Problem Solver 43
What is a
Thunk?
© ABL - The Problem Solver 44
“A thunk is a subroutine that is
created, often automatically, to
assist a call to another subroutine”
-Wikipedia -
Configure
Thunk
Middleware
© ABL - The Problem Solver 45
Update
the
Actions
© ABL - The Problem Solver 46
Add movies
reducer
© ABL - The Problem Solver 47
Update the
reducers
index.js
© ABL - The Problem Solver 48
Extract
movies
from
store
© ABL - The Problem Solver 49
Cleanup
 app-container.jsx
 Remove allMovies and passing movies to
AppPresentation
© ABL - The Problem Solver 50
Redux DevTools
© ABL - The Problem Solver 51
Redux
DevTools
© ABL - The Problem Solver 52
Redux
DevTools
© ABL - The Problem Solver 53
Remember the user
© ABL - The Problem Solver 54
Remember
the user
© ABL - The Problem Solver 55
Playing and
stopping movies
© ABL - The Problem Solver 56
Add actions
© ABL - The Problem Solver 57
Update
reducer
© ABL - The Problem Solver 58
Start
playing
© ABL - The Problem Solver 59
Retrieve the
playing
movie from
the store in
app-
presentation
© ABL - The Problem Solver 60
Retrieve the
playing
movie from
the store in
playing-
movie
© ABL - The Problem Solver 61
Cleanup
 app-container.jsx
 main-page/index.jsx
 genre-list.jsx
 genre-row.jsx
© ABL - The Problem Solver 62
Filtering movies
© ABL - The Problem Solver 63
Filtering
movies
 The list of filtered movies are derived from state
© ABL - The Problem Solver 64
Add action
© ABL - The Problem Solver 65
Reducer
© ABL - The Problem Solver 66
Filter-
movies.jsx
© ABL - The Problem Solver 67
App-
presentation.
jsx
© ABL - The Problem Solver 68
Cleanup
 Header.jsx
 Remove filterMovies
 Main-page/index.jsx
 Remove filterMovies
© ABL - The Problem Solver 69
Remove
app-container
The AppContainer is no longer needed.
© ABL - The Problem Solver 70
Index.js
© ABL - The Problem Solver 71
Connect only to
required movie data
© ABL - The Problem Solver 72
Main-page
© ABL - The Problem Solver 73
Genre-list
© ABL - The Problem Solver 74
Billboard
© ABL - The Problem Solver 75
App-
presentation
© ABL - The Problem Solver 76
Bonus
Exercises
 Extract updating localStorage from user reducer
and do this with middleware
 The user is passed from AppPresentation =>
MainPage => Header
© ABL - The Problem Solver 77
MauricedeBeijer
@mauricedb
maurice.de.beijer
@gmail.com
© ABL - The Problem Solver 78

Contenu connexe

Tendances

Getting started with Redux js
Getting started with Redux jsGetting started with Redux js
Getting started with Redux jsCitrix
 
Introduction to React & Redux
Introduction to React & ReduxIntroduction to React & Redux
Introduction to React & ReduxBoris Dinkevich
 
React + Redux. Best practices
React + Redux.  Best practicesReact + Redux.  Best practices
React + Redux. Best practicesClickky
 
React + Redux + TypeScript === ♥
React + Redux + TypeScript === ♥React + Redux + TypeScript === ♥
React + Redux + TypeScript === ♥Remo Jansen
 
React state managmenet with Redux
React state managmenet with ReduxReact state managmenet with Redux
React state managmenet with ReduxVedran Blaženka
 
React.js and Redux overview
React.js and Redux overviewReact.js and Redux overview
React.js and Redux overviewAlex Bachuk
 
Redux training
Redux trainingRedux training
Redux trainingdasersoft
 
React for Dummies
React for DummiesReact for Dummies
React for DummiesMitch Chen
 
Academy PRO: React JS. Redux & Tooling
Academy PRO: React JS. Redux & ToolingAcademy PRO: React JS. Redux & Tooling
Academy PRO: React JS. Redux & ToolingBinary Studio
 
Introduction to react and redux
Introduction to react and reduxIntroduction to react and redux
Introduction to react and reduxCuong Ho
 
Switch to React.js from AngularJS developer
Switch to React.js from AngularJS developerSwitch to React.js from AngularJS developer
Switch to React.js from AngularJS developerEugene Zharkov
 
Better web apps with React and Redux
Better web apps with React and ReduxBetter web apps with React and Redux
Better web apps with React and ReduxAli Sa'o
 
React Lifecycle and Reconciliation
React Lifecycle and ReconciliationReact Lifecycle and Reconciliation
React Lifecycle and ReconciliationZhihao Li
 

Tendances (20)

Getting started with Redux js
Getting started with Redux jsGetting started with Redux js
Getting started with Redux js
 
Introduction to React & Redux
Introduction to React & ReduxIntroduction to React & Redux
Introduction to React & Redux
 
React + Redux. Best practices
React + Redux.  Best practicesReact + Redux.  Best practices
React + Redux. Best practices
 
React + Redux + TypeScript === ♥
React + Redux + TypeScript === ♥React + Redux + TypeScript === ♥
React + Redux + TypeScript === ♥
 
Using redux
Using reduxUsing redux
Using redux
 
React state managmenet with Redux
React state managmenet with ReduxReact state managmenet with Redux
React state managmenet with Redux
 
React.js and Redux overview
React.js and Redux overviewReact.js and Redux overview
React.js and Redux overview
 
Introduction to Redux
Introduction to ReduxIntroduction to Redux
Introduction to Redux
 
React & redux
React & reduxReact & redux
React & redux
 
Redux training
Redux trainingRedux training
Redux training
 
Angular redux
Angular reduxAngular redux
Angular redux
 
React / Redux Architectures
React / Redux ArchitecturesReact / Redux Architectures
React / Redux Architectures
 
React for Dummies
React for DummiesReact for Dummies
React for Dummies
 
Academy PRO: React JS. Redux & Tooling
Academy PRO: React JS. Redux & ToolingAcademy PRO: React JS. Redux & Tooling
Academy PRO: React JS. Redux & Tooling
 
React, Flux and a little bit of Redux
React, Flux and a little bit of ReduxReact, Flux and a little bit of Redux
React, Flux and a little bit of Redux
 
Introduction to react and redux
Introduction to react and reduxIntroduction to react and redux
Introduction to react and redux
 
Switch to React.js from AngularJS developer
Switch to React.js from AngularJS developerSwitch to React.js from AngularJS developer
Switch to React.js from AngularJS developer
 
Better web apps with React and Redux
Better web apps with React and ReduxBetter web apps with React and Redux
Better web apps with React and Redux
 
React & Redux
React & ReduxReact & Redux
React & Redux
 
React Lifecycle and Reconciliation
React Lifecycle and ReconciliationReact Lifecycle and Reconciliation
React Lifecycle and Reconciliation
 

En vedette

Hayalimdeki Okulum
Hayalimdeki OkulumHayalimdeki Okulum
Hayalimdeki OkulumŞule Eşgi
 
My journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsMy journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsJason Man
 
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)maditabalnco
 
Из глубины седых веков (изучение нравственного наследия)
Из глубины седых веков (изучение нравственного наследия)Из глубины седых веков (изучение нравственного наследия)
Из глубины седых веков (изучение нравственного наследия)DROFA-VENTANA
 
コメントスパム対策から始まったWordPress生活
コメントスパム対策から始まったWordPress生活コメントスパム対策から始まったWordPress生活
コメントスパム対策から始まったWordPress生活毅 佐藤
 
Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire resultsasmediac16
 
Confined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresConfined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresAnand Prakash
 
RxJS + Redux + React = Amazing
RxJS + Redux + React = AmazingRxJS + Redux + React = Amazing
RxJS + Redux + React = AmazingJay Phelps
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesomeAndrew Hull
 
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...windi silviana
 
3Com 160036000
3Com 1600360003Com 160036000
3Com 160036000savomir
 
Os scheduling Algorithms
Os scheduling AlgorithmsOs scheduling Algorithms
Os scheduling AlgorithmsNeelamani Samal
 

En vedette (17)

Jmmatthewslaw
JmmatthewslawJmmatthewslaw
Jmmatthewslaw
 
Hayalimdeki Okulum
Hayalimdeki OkulumHayalimdeki Okulum
Hayalimdeki Okulum
 
4 pilareseducación
4 pilareseducación4 pilareseducación
4 pilareseducación
 
My journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOpsMy journey from Fragile, to Agile and now DevOps
My journey from Fragile, to Agile and now DevOps
 
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)DigiRap International Photography Award Winners 2016: Category Travel (Colour)
DigiRap International Photography Award Winners 2016: Category Travel (Colour)
 
The busy developer guide to Docker
The busy developer guide to DockerThe busy developer guide to Docker
The busy developer guide to Docker
 
Из глубины седых веков (изучение нравственного наследия)
Из глубины седых веков (изучение нравственного наследия)Из глубины седых веков (изучение нравственного наследия)
Из глубины седых веков (изучение нравственного наследия)
 
コメントスパム対策から始まったWordPress生活
コメントスパム対策から始まったWordPress生活コメントスパム対策から始まったWordPress生活
コメントスパム対策から始まったWordPress生活
 
Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire results
 
Confined space – hazards –risk –control measures
Confined space – hazards –risk –control measuresConfined space – hazards –risk –control measures
Confined space – hazards –risk –control measures
 
Ab censeñanza ddhh
Ab censeñanza ddhhAb censeñanza ddhh
Ab censeñanza ddhh
 
RxJS + Redux + React = Amazing
RxJS + Redux + React = AmazingRxJS + Redux + React = Amazing
RxJS + Redux + React = Amazing
 
React JS and why it's awesome
React JS and why it's awesomeReact JS and why it's awesome
React JS and why it's awesome
 
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
Sim, windi silviana, hapzi ali, sistem pengambilan keputusan, universitas mer...
 
Deep freezer
Deep freezerDeep freezer
Deep freezer
 
3Com 160036000
3Com 1600360003Com 160036000
3Com 160036000
 
Os scheduling Algorithms
Os scheduling AlgorithmsOs scheduling Algorithms
Os scheduling Algorithms
 

Similaire à Better React state management with Redux

Building large and scalable mission critical applications with React
Building large and scalable mission critical applications with ReactBuilding large and scalable mission critical applications with React
Building large and scalable mission critical applications with ReactMaurice De Beijer [MVP]
 
Building Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureBuilding Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureMaurice De Beijer [MVP]
 
Building high-performance web applications with Preact
Building high-performance web applications with PreactBuilding high-performance web applications with Preact
Building high-performance web applications with PreactMaurice De Beijer [MVP]
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applicationsMaurice De Beijer [MVP]
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applicationsMaurice De Beijer [MVP]
 
React gsg presentation with ryan jung &amp; elias malik
React   gsg presentation with ryan jung &amp; elias malikReact   gsg presentation with ryan jung &amp; elias malik
React gsg presentation with ryan jung &amp; elias malikLama K Banna
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applicationsMaurice De Beijer [MVP]
 
Building reliable applications with React, C#, and Azure
Building reliable applications with React, C#, and AzureBuilding reliable applications with React, C#, and Azure
Building reliable applications with React, C#, and AzureMaurice De Beijer [MVP]
 
Jaoo Michael Neale 09
Jaoo Michael Neale 09Jaoo Michael Neale 09
Jaoo Michael Neale 09Michael Neale
 
React suspense, not just for Alfred Hitchcock
React suspense, not just for Alfred HitchcockReact suspense, not just for Alfred Hitchcock
React suspense, not just for Alfred HitchcockMaurice De Beijer [MVP]
 
React js programming concept
React js programming conceptReact js programming concept
React js programming conceptTariqul islam
 
Web Performance & Latest in React
Web Performance & Latest in ReactWeb Performance & Latest in React
Web Performance & Latest in ReactTalentica Software
 
Painless Migrations from Backbone to React/Redux
Painless Migrations from Backbone to React/ReduxPainless Migrations from Backbone to React/Redux
Painless Migrations from Backbone to React/ReduxJim Sullivan
 
Continuous Deployment of your Application @JUGtoberfest
Continuous Deployment of your Application @JUGtoberfestContinuous Deployment of your Application @JUGtoberfest
Continuous Deployment of your Application @JUGtoberfestMarcin Grzejszczak
 

Similaire à Better React state management with Redux (20)

The new React
The new React The new React
The new React
 
The productive developer guide to React
The productive developer guide to ReactThe productive developer guide to React
The productive developer guide to React
 
Why I am hooked on the future of React
Why I am hooked on the future of ReactWhy I am hooked on the future of React
Why I am hooked on the future of React
 
Building large and scalable mission critical applications with React
Building large and scalable mission critical applications with ReactBuilding large and scalable mission critical applications with React
Building large and scalable mission critical applications with React
 
I am hooked on React
I am hooked on ReactI am hooked on React
I am hooked on React
 
Why I am hooked on the future of React
Why I am hooked on the future of ReactWhy I am hooked on the future of React
Why I am hooked on the future of React
 
Building Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureBuilding Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & Azure
 
Building high-performance web applications with Preact
Building high-performance web applications with PreactBuilding high-performance web applications with Preact
Building high-performance web applications with Preact
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applications
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applications
 
React gsg presentation with ryan jung &amp; elias malik
React   gsg presentation with ryan jung &amp; elias malikReact   gsg presentation with ryan jung &amp; elias malik
React gsg presentation with ryan jung &amp; elias malik
 
Building high performance web applications
Building high performance web applicationsBuilding high performance web applications
Building high performance web applications
 
Building reliable applications with React, C#, and Azure
Building reliable applications with React, C#, and AzureBuilding reliable applications with React, C#, and Azure
Building reliable applications with React, C#, and Azure
 
Jaoo Michael Neale 09
Jaoo Michael Neale 09Jaoo Michael Neale 09
Jaoo Michael Neale 09
 
React suspense, not just for Alfred Hitchcock
React suspense, not just for Alfred HitchcockReact suspense, not just for Alfred Hitchcock
React suspense, not just for Alfred Hitchcock
 
React js programming concept
React js programming conceptReact js programming concept
React js programming concept
 
Web Performance & Latest in React
Web Performance & Latest in ReactWeb Performance & Latest in React
Web Performance & Latest in React
 
Painless Migrations from Backbone to React/Redux
Painless Migrations from Backbone to React/ReduxPainless Migrations from Backbone to React/Redux
Painless Migrations from Backbone to React/Redux
 
Continuous Deployment of your Application @JUGtoberfest
Continuous Deployment of your Application @JUGtoberfestContinuous Deployment of your Application @JUGtoberfest
Continuous Deployment of your Application @JUGtoberfest
 
0900 learning-react
0900 learning-react0900 learning-react
0900 learning-react
 

Plus de Maurice De Beijer [MVP]

Practice TypeScript Techniques Building React Server Components App
Practice TypeScript Techniques Building React Server Components AppPractice TypeScript Techniques Building React Server Components App
Practice TypeScript Techniques Building React Server Components AppMaurice De Beijer [MVP]
 
A foolproof Way to Estimate a Software Project
A foolproof Way to Estimate a Software ProjectA foolproof Way to Estimate a Software Project
A foolproof Way to Estimate a Software ProjectMaurice De Beijer [MVP]
 
Surati Tech Talks 2022 / Build reliable Svelte applications using Cypress
Surati Tech Talks 2022 / Build reliable Svelte applications using CypressSurati Tech Talks 2022 / Build reliable Svelte applications using Cypress
Surati Tech Talks 2022 / Build reliable Svelte applications using CypressMaurice De Beijer [MVP]
 
Build reliable Svelte applications using Cypress
Build reliable Svelte applications using CypressBuild reliable Svelte applications using Cypress
Build reliable Svelte applications using CypressMaurice De Beijer [MVP]
 
Building Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureBuilding Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureMaurice De Beijer [MVP]
 
Concurrent Rendering Adventures in React 18
Concurrent Rendering Adventures in React 18Concurrent Rendering Adventures in React 18
Concurrent Rendering Adventures in React 18Maurice De Beijer [MVP]
 
Building reliable web applications using Cypress
Building reliable web applications using CypressBuilding reliable web applications using Cypress
Building reliable web applications using CypressMaurice De Beijer [MVP]
 
Getting started with React Suspense and concurrent rendering
Getting started with React Suspense and concurrent renderingGetting started with React Suspense and concurrent rendering
Getting started with React Suspense and concurrent renderingMaurice De Beijer [MVP]
 
From zero to hero with the Reactive extensions for JavaScript
From zero to hero with the Reactive extensions for JavaScriptFrom zero to hero with the Reactive extensions for JavaScript
From zero to hero with the Reactive extensions for JavaScriptMaurice De Beijer [MVP]
 
From zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptFrom zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptMaurice De Beijer [MVP]
 
Create flexible React applications using GraphQL apis
Create flexible React applications using GraphQL apisCreate flexible React applications using GraphQL apis
Create flexible React applications using GraphQL apisMaurice De Beijer [MVP]
 
Create flexible react applications using GraphQL API's
Create flexible react applications using GraphQL API'sCreate flexible react applications using GraphQL API's
Create flexible react applications using GraphQL API'sMaurice De Beijer [MVP]
 
From zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptFrom zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptMaurice De Beijer [MVP]
 
From zero to hero with the reactive extensions for java script
From zero to hero with the reactive extensions for java scriptFrom zero to hero with the reactive extensions for java script
From zero to hero with the reactive extensions for java scriptMaurice De Beijer [MVP]
 
Tooling for the productive front end developer
Tooling for the productive front end developerTooling for the productive front end developer
Tooling for the productive front end developerMaurice De Beijer [MVP]
 

Plus de Maurice De Beijer [MVP] (18)

Practice TypeScript Techniques Building React Server Components App
Practice TypeScript Techniques Building React Server Components AppPractice TypeScript Techniques Building React Server Components App
Practice TypeScript Techniques Building React Server Components App
 
A foolproof Way to Estimate a Software Project
A foolproof Way to Estimate a Software ProjectA foolproof Way to Estimate a Software Project
A foolproof Way to Estimate a Software Project
 
Surati Tech Talks 2022 / Build reliable Svelte applications using Cypress
Surati Tech Talks 2022 / Build reliable Svelte applications using CypressSurati Tech Talks 2022 / Build reliable Svelte applications using Cypress
Surati Tech Talks 2022 / Build reliable Svelte applications using Cypress
 
Build reliable Svelte applications using Cypress
Build reliable Svelte applications using CypressBuild reliable Svelte applications using Cypress
Build reliable Svelte applications using Cypress
 
Building Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & AzureBuilding Reliable Applications Using React, .NET & Azure
Building Reliable Applications Using React, .NET & Azure
 
Concurrent Rendering Adventures in React 18
Concurrent Rendering Adventures in React 18Concurrent Rendering Adventures in React 18
Concurrent Rendering Adventures in React 18
 
Why I am hooked on the future of React
Why I am hooked on the future of ReactWhy I am hooked on the future of React
Why I am hooked on the future of React
 
Building reliable web applications using Cypress
Building reliable web applications using CypressBuilding reliable web applications using Cypress
Building reliable web applications using Cypress
 
Getting started with React Suspense and concurrent rendering
Getting started with React Suspense and concurrent renderingGetting started with React Suspense and concurrent rendering
Getting started with React Suspense and concurrent rendering
 
From zero to hero with the Reactive extensions for JavaScript
From zero to hero with the Reactive extensions for JavaScriptFrom zero to hero with the Reactive extensions for JavaScript
From zero to hero with the Reactive extensions for JavaScript
 
From zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptFrom zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScript
 
Create flexible React applications using GraphQL apis
Create flexible React applications using GraphQL apisCreate flexible React applications using GraphQL apis
Create flexible React applications using GraphQL apis
 
Create flexible react applications using GraphQL API's
Create flexible react applications using GraphQL API'sCreate flexible react applications using GraphQL API's
Create flexible react applications using GraphQL API's
 
Docker for a .NET web developer
Docker for a .NET web developerDocker for a .NET web developer
Docker for a .NET web developer
 
From zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScriptFrom zero to hero with the reactive extensions for JavaScript
From zero to hero with the reactive extensions for JavaScript
 
Docker containers on Windows
Docker containers on WindowsDocker containers on Windows
Docker containers on Windows
 
From zero to hero with the reactive extensions for java script
From zero to hero with the reactive extensions for java scriptFrom zero to hero with the reactive extensions for java script
From zero to hero with the reactive extensions for java script
 
Tooling for the productive front end developer
Tooling for the productive front end developerTooling for the productive front end developer
Tooling for the productive front end developer
 

Dernier

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Dernier (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Better React state management with Redux