Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Groot
Discontinued Graphical Editor to create BehaviorTrees. Compliant with BehaviorTree.CPP (by BehaviorTree)
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
State machines are cool but they don't compose well out of the box. Behavior Graph let's you build a composable network of them so they become a practical software architecture. (Disclaimer, I am a coauthor) https://github.com/yahoo/bgjs
At our company, we rely a lot on https://github.com/boost-ext/sml
https://github.com/kenkunz/svelte-fsm
Svelte + FSM turned one of the most convoluted UXes I've every dealt with into something manageable and almost pleasant.
This is a complex sales kiosk that must operate work limited or flapping network connectivity entire handling huge spikes in usage.
Svelte itself jusy gets out of the way, you don't fight it. The FSM makes your mental model explicit.
Something like "ok, we're halfway through the complex terminal registration process, the last network request timed out and there user pressed the back button, now what?"
With boolean flags its a mess.
Unrelated to javascript, but in the robotics industry there is a trend towards Behaviour Trees. https://www.behaviortree.dev/ is a C++ library that was originally designed for controlling robots via ROS, but it appears to be decoupled from the ROS ecosystem so it could be used for other projects.
There is a basic UI available for editing the tree https://github.com/BehaviorTree/Groot
Unrelated to javascript, but in the robotics industry there is a trend towards Behaviour Trees. https://www.behaviortree.dev/ is a C++ library that was originally designed for controlling robots via ROS, but it appears to be decoupled from the ROS ecosystem so it could be used for other projects.
There is a basic UI available for editing the tree https://github.com/BehaviorTree/Groot
Related posts
- Mastering XState Fundamentals: A React-powered Guide
- Unleashing the Power of Actors in Frontend Application Development
- Rethinking State Management - Why XState is a Game-Changer for Developers
- Get out of state management hell with automatic revalidation
- Sequence diagrams, the only good thing UML brought to software development