https://github.com/rsoesemann/salesforce-plantuml
Salesforce app to generate UML class & ER-diagrams from your org data. Leverages the PlantUML library.
https://github.com/rsoesemann/salesforce-plantuml
apex auto-layout class-diagram-generator er-diagram plantuml salesforce uml-diagram
Last synced: 3 months ago
JSON representation
Salesforce app to generate UML class & ER-diagrams from your org data. Leverages the PlantUML library.
- Host: GitHub
- URL: https://github.com/rsoesemann/salesforce-plantuml
- Owner: rsoesemann
- License: mit
- Created: 2013-10-11T08:10:08.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2023-10-18T14:55:51.000Z (over 1 year ago)
- Last Synced: 2025-02-11T15:53:19.888Z (4 months ago)
- Topics: apex, auto-layout, class-diagram-generator, er-diagram, plantuml, salesforce, uml-diagram
- Language: JavaScript
- Homepage:
- Size: 939 KB
- Stars: 111
- Watchers: 15
- Forks: 32
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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](http://plantuml.sourceforge.net/).> 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]## /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
4. 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,...)

## Third-party Code ##
This app makes use of third-party components also hosted on GitHub:
- [Apex-Select-Option-Sorting](https://github.com/abhinavguptas/Apex-Select-Option-Sorting), an Apex sort utility class for SelectOptions
- [Multiselect Component](https://github.com/metadaddy-sfdc/Visualforce-Multiselect-Picklist), a Multiselect Picklist Visualforce Component
- [PlantUML Javascript bridge](http://plantuml.sourceforge.net/codejavascript2.html) A javascript Deflate algorithm to create URL to call the plantuml.com image server