Inspiration

In my Capstone I class at FIU, we are required to make a poster that shows UML Class Diagrams for parts of the software we worked on. I tried various tools to create diagrams, and were frustrated with all of them.

What it does

Given a JSON object file or as text input form standard input, it outputs a SVG file containing the diagram, with classes in randomly placed locations with the interactions drawn between them.

How we built it

Built entirely in Go. Library portion and command line runner uses only the standard library.

Challenges we ran into

Getting the cloud function to work properly was difficult. Currently, if you send a proper request, it responds with a 200 status code but no response body.

Accomplishments that we're proud of

What we learned

  • Learned how to manipulate XML and SVG files in particular.
  • Learned how to deploy a function to Google Cloud

What's next for umlgen

  • Fixing generated arrows to make them less quirky
  • Add more types of interactions
  • Add support for other types of diagrams

Cloud function info

Cloud function url

Built With

Share this project:

Updates