Visualize actor system
in progress
David Khourshid
This will be released within the next couple weeks.
Alex Ford
David Khourshid: Woo!
B
Branden Silva
David Khourshid:
The best kind of early Christmas present! Thanks for the hard work making state more accessible visually.
Steve
David Khourshid: no way. This is incredible news. I’m so stoked to see this get released!
J
Jakub Malojlo
David Khourshid: This is so great! Is there any sneak peak of what it will look like, some PR we can follow? Exciting news!
E
Exist Ivy
David Khourshid: thanks!!
B
Branden Silva
I am looking forward to this one. Being able to spawn or invoke another actor and visually see this hooked into other existing machine that was added in in the project pane will be invaluable.
Shane Osbourne
I used this feature in the old viz all the time - the sequence diagrams were truly one of the most useful parts. In the Stately.ia editor, I'd love to be able to create 2 machines on screen, and then see events between them. The current focus on just 1 machine isn't really how large apps are built :)
David Khourshid
in progress
Stephen Buchanan
Is https://github.com/statelyai/xstate/pull/3969 part of the effort to allow for this?
David Khourshid
Stephen Buchanan: Yes it is, but more of the work is happening in the Studio side, and it is in progress.
Stephen Buchanan
Oh yes please! The very first project I picked to use Xstate for... relies on ALL of the important action happening inside the Actors themselves, and it's unfortunate that none of this can be modeled or simulated visually with the current tooling.
Angel
I imagine this would only be possible from the root actor. Although, there was a mention of parsing source files and generating an actor tree.
In any case, this would be very helpful as it's difficult to reason about multiple actors interacting with one another when you can only construct mental models. Without this, there is an inclination to combine everything into one big actor.
David Khourshid
planned
John Lombardo
Is the current thinking along the lines of the receptionist pattern or a parent-child?
David Khourshid
John Lombardo: I can see this handling both. Thanks to XState's API, we can know in advance when two different actors may communicate with each other in the future, even if they're not parent-child. I feel it's important to visualize those communication relationships.
John Lombardo
David Khourshid: This would help me a lot! Most things I work on involve a system of actors but right now a significant number of bugs are occurring because of poorly understood inter-actor communication.
John Lombardo
Got me again 😫