Skip to content

This repository includes a set of logos from Cloudogu EcoSystem Dogus and other tools for using as Sprites in PlantUML.

Notifications You must be signed in to change notification settings

cloudogu/plantuml-cloudogu-sprites

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sprites for PlantUML

This repository includes a set of logos from Cloudogu EcoSystem Dogus and other tools for using as Sprites in PlantUML. BTW: Check out our Git based wiki Smeagol which has rich PlantUML support!

This work was inspired by tupadr3/plantuml-icon-font-sprites. (Note: if you use their sprites in the same PlantUML diagram with sprites from this repo, you don't have to include the file common.puml from their repo. The code is already in common.puml of this repo.)

Usage

First include the file common.puml either via path or url. It also contains style definitions according to the Cloudogu CI

[...]
!include ../common.puml
!includeurl https://raw.githubusercontent.com/cloudogu/plantuml-cloudogu-sprites/master/common.puml
[...]

You can define a macro for the URL

[...]
!define CLOUDOGUURL https://raw.githubusercontent.com/cloudogu/plantuml-cloudogu-sprites/master
!includeurl CLOUDOGUURL/common.puml
[...]

Then include the sprites that you want to use

[...]
!includeurl CLOUDOGUURL/dogus/scm.puml
!includeurl CLOUDOGUURL/dogus/smeagol.puml
[...]

To use the Sprites you can include their name directly with <<$name>>

[...]
node "Cloudogu Ecosystem" <<$cloudogu>> {
[...]

or add one of the defined macros. Prefix can be either 'DOGU' or 'TOOL':

[...]
<prefix>_<name>(alias)
<prefix>_<name>(alias,label)
<prefix>_<name>(alias,label,shape)
<prefix>_<name>(alias,label,shape,color)
[...]

Complete Example

@startuml
!define CLOUDOGUURL https://raw.githubusercontent.com/cloudogu/plantuml-cloudogu-sprites/master
!includeurl CLOUDOGUURL/common.puml
!includeurl CLOUDOGUURL/dogus/jenkins.puml
!includeurl CLOUDOGUURL/dogus/cloudogu.puml
!includeurl CLOUDOGUURL/dogus/scm.puml
!includeurl CLOUDOGUURL/dogus/smeagol.puml
!includeurl CLOUDOGUURL/dogus/nexus.puml
!includeurl CLOUDOGUURL/tools/k8s.puml

node "Cloudogu Ecosystem" <<$cloudogu>> {
	DOGU_JENKINS(jenkins, Jenkins) #ffffff
	DOGU_SCM(scm, SCM-Manager) #ffffff
	DOGU_SMEAGOL(smeagol, Smeagol) #ffffff
	DOGU_NEXUS(nexus,Nexus) #ffffff
}

TOOL_K8S(k8s, Kubernetes) #ffffff

actor developer

developer -> smeagol : "Edit Slides"
smeagol -> scm : Push
scm -> jenkins : Trigger
jenkins -> nexus : Deploy
jenkins -> k8s : Deploy

@enduml

Example

List of all Dogu Sprites

Sprite Dogu name Macro Name
CAS CAS DOGU_CAS $cas
Cloudogu Cloudogu DOGU_CLOUDOGU $cloudogu
Cockpit Cockpit DOGU_COCKPIT $cockpit
Jenkins Jenkins DOGU_JENKINS $jenkins
Nexus Nexus DOGU_NEXUS $nexus
Nginx Nginx DOGU_NGINX $nginx
OpenLDAP OpenLDAP DOGU_OPENLDAP $openldap
PlantUML PlantUML DOGU_PLANTUML $plantuml
Postfix Postfix DOGU_POSTFIX $postfix
PostgreSQL PostgreSQL DOGU_POSTGRESQL $postgresql
Redmine Redmine DOGU_REDMINE $redmine
Registrator Registrator DOGU_REGISTRATOR $registrator
SCM Manager SCM Manager DOGU_SCM $scm
Smeagol Smeagol DOGU_SMEAGOL $smeagol
Sonarqube Sonarqube DOGU_SONARQUBE $sonarqube
User management User management DOGU_USERMGMT $usermgmt
LDAP mapper LDAP mapper DOGU_LDAPMAPPER $ldapmapper
Jira jira DOGU_JIRA $jira
Confluence confluence DOGU_CONFLUENCE $confluence
Backup backup DOGU_BACKUP $backup
Easyredmine easyredmine DOGU_EASYREDMINE $easyredmine
Portainer portainer DOGU_PORTAINER $portainer
Swaggerui swaggerui DOGU_SWAGGERUI $swaggerui
AdminDogu admin DOGU_ADMIN $admin

List of all other tools sprites

Sprite Tool name Macro Name
Ansible Ansible TOOL_ANSIBLE $ansible
Cucumber Cucumber TOOL_CUCUMBER $cucumber
Cypress Cypress TOOL_CYPRESS $cypress
Docker Docker TOOL_DOCKER $docker
Elastic Search Elastic Search TOOL_ELASTIC $elastic
Etcd Etcd TOOL_ETCD $etcd
fail2ban fail2ban TOOL_FAIL2BAN $fail2ban
Grafana Grafana TOOL_GRAFANA $grafana
Gatsby Gatsby TOOL_GATSBY $gatsby
Helm Helm TOOL_HELM $helm
JUnit JUnit TOOL_JUNIT $junit
Kubernetes Kubernetes TOOL_K8S $k8s
Prometheus Prometheus TOOL_PROMETHEUS $prometheus
QEmu QEmu TOOL_QEMU $qemu
React React TOOL_REACT $react
Terraform Terraform TOOL_TERRAFORM $terraform
Ubuntu Ubuntu TOOL_UBUNTU $ubuntu
Virtualbox Virtualbox TOOL_VIRTUALBOX $virtualbox
VMWare VMWare TOOL_VMWARE $vmware

Adding new sprites

Only a few things are needed to create new sprites:

  1. a 48x48 pixel bitmap image
  2. the plantuml.jar
  3. a working Java installation

Images work best when they have a white background (that is: no alpha/transparency channel is visible) and show a good contrast.

Steps

  1. prepare the input image
  2. encode the input image to a Plant UML sprit`
    • java -jar /path/to/plantuml.jar -encodesprite 16 yourSprite.png > yourSprite.puml
  3. optional, but it just would be nice:
    1. harmonize sprite file to match existing ones
      • add @startuml / @enduml tags
      • add ENTITY stuff (see the other .puml files)
    2. Share here

All trademarks, product names and logos appearing above are the property of their respective owners, including in some instances Cloudogu GmbH. Any rights not expressly granted herein are reserved.


What is the Cloudogu EcoSystem?

The Cloudogu EcoSystem is an open platform, which lets you choose how and where your team creates great software. Each service or tool is delivered as a Dogu, a Docker container. Each Dogu can easily be integrated in your environment just by pulling it from our registry. We have a growing number of ready-to-use Dogus, e.g. SCM-Manager, Jenkins, Nexus, SonarQube, Redmine and many more. Every Dogu can be tailored to your specific needs. Take advantage of a central authentication service, a dynamic navigation, that lets you easily switch between the web UIs and a smart configuration magic, which automatically detects and responds to dependencies between Dogus. The Cloudogu EcoSystem is open source and it runs either on-premises or in the cloud. The Cloudogu EcoSystem is developed by Cloudogu GmbH under MIT License.

How to get in touch?

Want to talk to the Cloudogu team? Need help or support? There are several ways to get in touch with us:


© 2020 Cloudogu GmbH - MADE WITH ❤️ FOR DEV ADDICTS. Legal notice / Impressum

About

This repository includes a set of logos from Cloudogu EcoSystem Dogus and other tools for using as Sprites in PlantUML.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published