This repo contains notes from Ian Mann's Egghead course Construct Sturdy UIs with XState
These notes contain the same structure as the transcriptions, along with additional rewrites, links to resources, and personal takes on the lesson. Feel free to submit additions to these notes, but please don't remove anything (unless we messed up or misunderstood something).
Our applications have lots of states that they can be in.
We usually remember “Loading” and “Successful”. If we’re having a particularly good day, we’ll get “Error” handled as well.
But what about other states that our application can be in?
Things like “Haven’t requested yet” or “The request was successful but there isn’t any data for us to show”.
It’s frustrating to think you’re “done” and then an edge case shows up (and this cycle repeats at least one more time).
Fed up with forgetting to handle the edge cases that appear when developing UIs, Isaac Mann started looking for a solution.
The answer? State machines.
In this course, Isaac will teach you how to plan and visualize your application’s states and the transitions between them through the creation of a React & XState powered Star Wars quiz app.
- 01. Introducing Construct Sturdy UIs with XState
- 02. Handle HTTP Request State with Xstate
- 03. Invoke An Xstate Service When Entering a State
- 04. Block a State Transition Order with Parallel States
- 05. Control Transition Order with Parallel States
- 06. Communicate Between State Machines in Different Components
- 07. Save Previous State with History State
- 08. Execute Code When Entering and Exiting States Using Activities
emoji | explanation |
---|---|
📹 | links to the course video |
🔮 | observation |
↪️ | callbacks |
🔎 | description |
warning | |
📝 | important note |
❌ | something to avoid |
🚙 | automatic |
🏁 | final state |
🔑 | great info |
⚙️ | configuration or setting |
👈 | note on code block |
💰 | definition with breakdown |
🐛 | bug |
📄 | documentation resource |
Alejando Roman 🖋 |
Lauro Silva 👀 |
Lucas Minter 👀 |