Edit the textarea below with additional PlantUML markup to create additional UML objects or to customise the UML you have generated. quick help
* Try evolving your UML into the more powerful Literate Code Maps - by adding code compartments to your UML classes/modules, which can contain rich text and useful code fragments. quick help

Your custom PlantUML markup below is added to the markup generated by parsing your Python or Java code.   Hit the Generate UML button to see the resulting diagram. Or hit ^ENTER.

  • Use the Add Snippet dropdown to add useful markup snippets
  • By referring to the names of your own classes and modules, you can attach notes and extra associations to them
  • Hide classes or modules with hide name
  • Define extra classes e.g. Object <|-- ArrayList means ArrayList class inherits from class Object
  • Add notes by defining a note e.g. note "blah\nblah." as N2 then associate that note with one or more objects e.g. Object .. N2 You can also define multiline notes using the note/end note syntax.
  • Add additional associations to other classes which gitUml may not have picked up. e.g. Class1 <|-- Class2 or Class3 .. Class4.
  • Add extra - and . symbols to make the lines in the diagram longer. For example <|-- is a longer association line than <|-
  • Setting colours, heading, footers, fonts, gradients and embedded html bold etc. is all possible - inside notes and classes.

To turn a UML class or module into a Literate Code Map box, add a "code compartment" with the following markup:

class YourClass {

    method("onClick", "params")

    your comments 
    go here 

    ```
    your code
    goes here
    ```

    possibly <b>more</b> comments etc.
}
    
Hit the Generate UML button to see the resulting diagram. Or hit ^ENTER.

  • Use the Add Snippet dropdown to add useful markup snippets, incl. the above "code compartment" snippet.
  • By referring to the names of your own reverse engineered classes and modules, you can attach notes and add code compartments to them - simply define the class again with the above code compartment markup.
  • Tip: Click the 'Show Generated PlantUML' checkbox at the bottom of the page then copy/paste class names into your custom PlantUML markup area. Remember, you define the same class several times and the contents will be blended.
  • Add cross references with xref("NN", "source") using whatever numbers or letters you want as NN. Use xref("NUM") to create a destination/anchor. Use the 'Add Snippet' dropdown to easily these snippets at the current cursor position.
  • See normal PlantUML quick help for more tips.
Please choose the method you want to create a compartment for:



        
This is the PlantUML markup that has been generated from the reverse engineered source code combined with any custom PlantUML markup you have entered. It completely defines the diagram you see.
Key Action
Ctrl Enter
Cmd Enter
Generate UML diagram
Ctrl L focus cursor in source code
Ctrl E toggle refine UML
Ctrl G scroll top

Source Code Editor:

Key Action
Ctrl /
Cmd /
toggle comment
Shift-Tab indent less
Ctrl D
Cmd D
duplicate line
Ctrl X
Cmd X
delete line
More shortcuts...

Registered Users can save Diagrams from GitHub repositories.
To vote for saving UML Fiddles please email me.!