DEV Community

Ossi Galkin
Ossi Galkin

Posted on • Originally published at Medium

Can You Build a Christmas Tree in a Frends Process?

Someone asked if our Christmas process was real. It is. Here’s how to build a working Christmas tree inside a Frends Process — emoji snowflakes, ASCII art, and all. That Process was published at the end of the year 2025 in newsletters and on LinkedIn.

Frends Processes made to look like Christmas Tree

The Process is real. With one small caveat. The menu on the left is from the Process Editor, whereas the image clearly shows a Process Instance, which doesn’t have that menu.

Trick 1: ASCII Art & Emojis

Ok, but how can one create such a Process? Let’s start with the easiest elements in the image. Clearly, one shape of ASCII Art Santa is its description. The snowflakes are emojis ❄. They appear to float freely, as in Frends, for certain shapes, you can move the name away from the shape itself. You can have spaces and newlines in names. Also, you can add a name to an element by double-clicking it. This allows you to play with snowflakes more easily.

Clearly, those two snowflakes are names of other shapes!
Clearly, those two snowflakes are names of other shapes!

The same trick is used in a Christmas tree. E.g., the name of the middle Task is

🟡     🟡

🟡      🟡        🟡
Enter fullscreen mode Exit fullscreen mode

The Frends also does indentation for the first line of the name for every Task, so you don’t need white space in front of the first yellow ball. That name is centered on the Task. However, you can’t float it around. The emoji tricks are just the beginning; the tree shape itself required something deeper.

Trick 2: Changing Task Sizes

The Tasks themselves look odd. Normally, Tasks are the same size. Always. Period.

However, Frends supports you in importing any valid BPMN diagram as a Frends Process. That diagram can have anything that BPMN supports. Before you can save it as a Process, you need to remove all unsupported BPMN shapes. But for supported shapes, you can keep any alterations that you have made. It is handy for preserving the readability of imported Processes. But it can be used creatively.

What is more convenient for creators is that you can just edit shapes after you have exported the Process to a file. In the Process, the size of the Tasks is slightly modified. Widths are set to 50, 100, and 200. You can have a Task with a width of 200 with the following definitions. Just look at the correct BPMNShape element in Process export and edit it and import ib back to Frends

 <bpmndi:BPMNShape id=\"Task_L2_di\" bpmnElement=\"Task_L2\">
     <dc:Bounds x=\"700\" y=\"-10\" width=\"200\" height=\"80\" />
     <bpmndi:BPMNLabel />
 </bpmndi:BPMNShape>
Enter fullscreen mode Exit fullscreen mode

Trick 3: Process State Timing

The last trick in the Process is that it started from Manual Trigger, executed Tasks successfully, and then the Exclusive Decision was still running when the screenshot was taken. The rest of the Process is yet to be executed. Thus, the tree is green, the star on top of it is yellow, and the rest of the Process is grey, serving as authentic ground for Finnish Christmas!

In the end, Exclusive Decision accepts any C# that evaluates true or false. So you just need to make something slow to give you enough time to take the screenshot.

So yes, it’s a real, working Frends Process. Just with a little holiday spirit baked in. Have you tried any creative BPMN tricks in Frends? I’d love to see what you’ve built — share it in the comments or in the Frends Community!

Top comments (0)