State diagram demos

Very simple showing change from State1 to State2

---
title: Very simple diagram
---
		stateDiagram
		  accTitle: This is the accessible title
      accDescr:This is an accessible description
      State1 --> State2
    

This has classDef statements to apply style classes to specific states

Here are the classDef statements:

classDef notMoving fill:white
classDef movement font-style:italic;
classDef badBadEvent fill:#f00,color:white,font-weight:bold

And these are how they are applied:

class Still notMoving
class Moving, Crash movement
class Crash badBadEvent

---
title: Very simple diagram
---
		stateDiagram-v2
		  accTitle: This is the accessible title
      accDescr: This is an accessible description

      classDef notMoving fill:white
      classDef movement font-style:italic;
      classDef badBadEvent fill:#f00,color:white,font-weight:bold

      [*] --> Still
      Still --> [*]
      Still --> Moving
      Moving --> Still
      Moving --> Crash
      Crash --> [*]

      class Still notMoving
      class Moving, Crash movement
      class Crash badBadEvent
    

    stateDiagram-v2
      accTitle: very very simple state
    accDescr: This is a state diagram showing one state
    State1
    

You can label the relationships

    stateDiagram-v2
    [*] --> State1
    State1 --> State2 : Transition 1
    State1 --> State3 : Transition 2
    State1 --> State4 : Transition 3
    State1 --> [*]
    

This shows Composite states

    stateDiagram-v2
    [*] --> First
    First --> Second
    First --> Third

    state First {
        [*] --> 1st
        1st --> [*]
    }
    state Second {
        [*] --> 2nd
        2nd --> [*]
    }
    state Third {
        [*] --> 3rd
        3rd --> [*]
    }
    

Compsite states can link to themselves

      stateDiagram-v2
            state Active {
              Idle
            }
            Inactive --> Idle: ACT
            Active --> Active: LOG
    

transition labels can span multiple lines using "br" tags or \n

      stateDiagram-v2
      [*] --> S1
      S1 --> S2: This long line uses a br tag
to create multiple
lines. S1 --> S3: This transition descripton uses \na newline character\nto create multiple\nlines.

You can add Notes

    stateDiagram-v2
      direction LR
      State1: A state with a note
      note right of State1
        Important information!
You can write notes.
And\nthey\ncan\nbe\nmulti-\nline. end note State1 --> State2 note left of State2 : Notes can be to the left of a state\n(like this one). note right of State2 : Notes can be to the right of a state\n(like this one).