Thursday, February 13, 2014

Stateless Designer Visual Studio Extension (with Source)

Visual Studio Gallery - Stateless Designer

Visual Studio extension to support visual design of stateless state machines. Support for Visual Studio 2012 and Visual Studio 2013. The goal for this projects is to allow software developers to design a state machines visually.

Project site



CodePlex - Stateless Designer


About stateless

stateless is a lightweight C# hierarchical state machine framework made by Nicholas Blumhardt. The stateless project is hosted here: If you don't know stateless, here is a comparison between stateless and Windows Workflow Foundation: Comparison between Stateless (on google code) and Windows Workflow. stateless also comes as a NuGet package: stateless is a great alternative to WWF.

About Stateless Designer

The goal for this projects is to allow software developers to design a state machines visually. Why a statemachine can improve your design. The true power of using a state machine is to have a graph showing the states with transitions. Stateless Designer can help you achieve this.

Stateless Developer use case:
- install Stateless Designer
- start Visual Studio
- create or open a C# project
- Add new Item to the C# project
- select Stateless State Machine
- design your state machine
- a C# class is created with your state machine

Getting started using Stateless Designer step-by-step.

Currently supported features

- Triggers without arguments
- OnEntry and OnExit delegates
- Reentrant transitions
- OnUnhandledTrigger delegate - new in Stateless Designer 1.4
- Guard Clauses: PermitIf and PermitReentryIf functionality - new in Stateless Designer 1.4

External articles

Twitter article 1168 - Note: Not in English article 1169 - Note: Not in English

Technology used

- Visual Studio Extensibility
- stateless

Sure Windows Workflow now support State Diagrams, but this is something a little different and I think pretty cool (and WWF just doesn't seem to be getting much press, attention, I wonder...). Anyway, not only do you get the designer, but it's nuget'able and you get the source too it all too. Now that's cool... :)

No comments: