Skip to content

Salesforce app to generate UML class & ER-diagrams from your org data. Leverages the PlantUML library.

License

Notifications You must be signed in to change notification settings

rsoesemann/salesforce-plantuml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9cb5694 · Oct 18, 2023

History

75 Commits
Sep 3, 2020
Jul 21, 2022
Nov 16, 2021
Jul 21, 2022
Jul 21, 2022
Nov 16, 2021
Jul 21, 2022
Sep 8, 2020
Sep 3, 2020
Sep 3, 2020
Nov 17, 2021
May 8, 2019
Oct 18, 2023
Sep 8, 2020
Mar 10, 2021

Repository files navigation

PlantUML diagram generator for Salesforce orgs

SalesforcePlantUML is a native Force.com application that renders UML diagrams from your orgs metadata. Currently it supports ERD diagrams from your SObjects. The diagrams are rendered by an external declarative UML service / library called PlantUML.

PlantUML is a free and open source UML tool for drawing UML diagrams from a simple and human readable text description. It ca be used as a stand-alone application or can be used from many different IDEs.[1] Dependencies for PlantUML are a Java virtual machine and an installation of Graphviz. To create the UML diagrams, PlantUML has a meta-language defined that allows the diagram creator to describe the UML as a series of text statements which the graphics engine translates into standard UML notation. The graphics engine is written in Java and is distributed in both JAR and source code form. [2]

Deploy to Salesforce

/apex/erdCreator page

This page render a UML class diagram that show standard and custom SObjects, their fields for a given permission set and related metadata (e.g. pages and triggers)

  1. Open page YOUR_ORG_URL/apex/erdCreator
  2. Select SObjects (If you choose too many or too complex classes you might get Limit errors.) 3 Choose some options
  3. Wait! (IMPORTANT as the main work is done in Javascript and on a very slow server)

and for SObjects including field permissions and related metadata (pages, trigger,...)

Page /apex/erdCreator

Third-party Code

This app makes use of third-party components also hosted on GitHub: