Render PlantUML diagrams in wiki pages


This plugin allows the integration of PlantUML on Trac wiki pages, where the diagrams are dynamically generated and embedded. See below for examples.

PlantUML is a Java utility that allows generation of different types of UML diagrams (such as sequence, activity, state, use cases, objects) from a simple text description file. PlantUML itself is distributed under the GPL license.

This macro can be used as follows:

  1. As a WikiProcessor with markup:
    Alice -> Bob: Authentication Request
    Bob --> Alice: Authentication Response
    Alice -> Bob: Another authentication Request
    Alice <-- Bob: another authentication Response
    will render the following UML diagram:

  1. As a WikiProcess rendering files from the repository:
    {{{#!plantuml path="/path/to/repository"
    {{{#!plantuml path="/repos/path/to/repository@rev"
  1. As a macro rendering files from the repository:

Additional documentation can be found on the WikiMacros page after installing the macro. More information on the PlantUML language and different types of UML diagrams can be found on the PlantUML Website.

See also:

Bugs/Feature Requests

Existing bugs and feature requests for PlantUmlMacro.

If you have any issues, create a new ticket.


14 / 16


8 / 9


5 / 6


Download the zipped source from here.

The macro is also available on PyPI.


You can check out PlantUmlMacro from here using Subversion, or browse the source with Trac.


General instructions on installing Trac plugins can be found on the TracPlugins page.


  1. Below instructions should be specific to some operating systems. Please help expanding these instructions.
  2. [sudo] is optional in case you already have authorisation to modify your server.

Installation steps:

  1. Check dependencies:
    1. A valid Java runtime environment.
    2. plantuml.jar: save it to the location that you'll specify in the configuration section /path/to/plantuml.jar:
      • Download PlantUML jar:
        [sudo] wget
      • Check version of PlantUML jar:
        cd /path/to/plantuml.jar
        [sudo] java -jar plantuml.jar -version
    3. Graphviz: check if installed and working as required in graphvizdot.
      [sudo] java -jar plantuml.jar -testdot

  2. Install component:
    • with easy_install, globally:
      [sudo] easy_install

  3. Enable this component as follows:
    • by updating trac.ini file under appropriate configuration section;
      plantuml.* = enabled
    • or accessing your Admin panel (under selected Trac environment ..admin/general/plugins ).
  4. Configure the Trac environment as follows:
    • by updating trac.ini file under appropriate configuration section;
      plantuml_jar = /path/to/plantuml.jar
      java_bin = /path/to/java_bin (optional, if Java binary is not on the search path)
      • example: plantuml_jar = /project-resources/trac/plugins.
      • example: java_bin = java, assumes that the Java binary is on the search path.
    • or accessing your Admin panel under selected Trac environment ..admin/general/plugins.
  5. Restart web server:
    • Apache on Ubuntu, example command line:
      [sudo] /etc/init.d/apache2 restart

  6. Test if this component is working properly (main environment and secondary ones if you have). If this component is installed correctly, then the example shown in the #Usage section should be also displayed on the WikiMacros#PlantUML-macro page.

Recent Changes

17597 by rjollos on 2019-11-26 05:41:59
TracPlantUml 2.3: Tag version 2.3

The release has been published to pypi:TracPlantUml/2.3

Fixes #13679.

17596 by rjollos on 2019-11-26 05:39:24
TracPlantUml 2.3dev: Add classifiers metadata

Refs #13679.

17025 by rjollos on 2018-01-28 11:38:22
TracPlantUml 2.3dev: Fix usemap attribute not prefixed with #

Patch by dries.decock@...

Fixes #13366.



Author: airadier
Maintainers: Ryan J Ollos
Contributors: ebencheung, Erwin Rademaker

Last modified 2 years ago Last modified on Feb 16, 2022, 5:48:30 PM

Attachments (1)

Download all attachments as: .zip