Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use swimlanes in flowchart diagram #2028

Open
marcpre opened this issue Apr 30, 2021 · 86 comments
Open

Use swimlanes in flowchart diagram #2028

marcpre opened this issue Apr 30, 2021 · 86 comments
Assignees
Labels

Comments

@marcpre
Copy link

marcpre commented Apr 30, 2021

I would like to create a flowchart, which has swimlanes.

Find below an example.

Exam

After reading the documentation I couldn`t find this functionality. I found this issue #551, which was automatically closed.

Any suggestions how to integrate this feature or add it to mermaid if it does not exist?

I appreciate your replies!

@marcpre marcpre added the Type: Other Not an enhancement or a bug label Apr 30, 2021
@marcpre marcpre changed the title Use a swimlanes in flowcharts Use swimlanes in flowchart diagram Apr 30, 2021
@rstockm
Copy link

rstockm commented Nov 1, 2021

That would be awesome, given that no framework used by CodiMD/HedeDoc offers swimlanes.

@rognales
Copy link

rognales commented Dec 7, 2021

That would mermaidjs as perfect diagram-as-a-code

@jeffdoolittle
Copy link

Any traction on this? Seems like a perfect fit for the project.

@eshafoshaf
Copy link

Up vote!

@itsthejoker
Copy link

This basically the only type of diagram I make and was the first thing I looked for with the github announcement. +1 from me.

@initdotd
Copy link

+1 and both vertical and horizontal lanes would be incredible!

@napei
Copy link

napei commented Mar 3, 2022

You can possibly achieve a halfway solution with subgraphs https://mermaid-js.github.io/mermaid/#/flowchart?id=subgraphs
Definitely a feature worth having, +1.

@gicellamare
Copy link

+1

1 similar comment
@LeDuble
Copy link

LeDuble commented Mar 15, 2022

+1

@iot-crazy
Copy link

Searching for this feature brought me straight here, so +1 from me too!

@brightblueray
Copy link

+1

2 similar comments
@bytesex
Copy link

bytesex commented Apr 7, 2022

+1

@gledsoneduardo
Copy link

+1

@Yash-Singh1 Yash-Singh1 added Type: Enhancement New feature or request Graph: Flow and removed Type: Other Not an enhancement or a bug labels Apr 20, 2022
@cndoit18
Copy link

+1

7 similar comments
@ToastShaman
Copy link

+1

@tobiasny
Copy link

+1

@tamanobi
Copy link

+1

@dhtek
Copy link

dhtek commented May 12, 2022

+1

@paulofgccunha
Copy link

+1

@shun528
Copy link

shun528 commented Jun 17, 2022

+1

@naoki914
Copy link

+1

@bytesex
Copy link

bytesex commented Jun 21, 2022

Hello dear,
Would it be somehow possible to have this issue assigned on someone?)

@eddya101
Copy link

+1

2 similar comments
@kelynch
Copy link

kelynch commented Jul 21, 2022

+1

@sabrasosimis
Copy link

+1

@ppKrauss
Copy link

ppKrauss commented Nov 3, 2023

2 years... Any hope here?

@wcgzgj
Copy link

wcgzgj commented Dec 8, 2023

Changing to plantUML now,it supports swimlanes and has plain language structure :(

@vesper8
Copy link

vesper8 commented Dec 9, 2023

Changing to plantUML now,it supports swimlanes and has plain language structure :(

So this is what you're going to be using now? https://github.com/plantuml/plantuml.js/

Seems interesting.. I also need swimlanes.

I see many examples using boundaries here: https://plantuml.github.io/plantuml.js/#example=playground/example-pumls/community/cloudflare_linode_firewall.puml

But would you happen to have an example with swimlanes similar to the ones in this thread?

Thanks

@zlatinz
Copy link

zlatinz commented Jan 15, 2024

plantUML performance on the playground page https://plantuml.github.io/plantuml.js/ is horrendous.
Much better performance on https://www.planttext.com/
As for example for swimlanes, maybe check https://stackoverflow.com/questions/51020100/plantuml-swimlanes-and-overlapping-connectors

@juampe
Copy link

juampe commented Feb 20, 2024

+1
I can make swinlane flowchart with excel, ¿Why not with mermaid?
imagen

@medliii
Copy link

medliii commented Feb 25, 2024

@knsv @ashishjain0512 Hello!

I apologize for the disturbance. Is there still a lot to be done on this feature? Is it possible to complete it? It would significantly enhance the functionality.

I understand it's not much, but I am willing to personally donate $500 for the release of swimlanes.

@sohmuijai
Copy link

+1 for this feature please

1 similar comment
@mcqueenna
Copy link

+1 for this feature please

@latetedemelon
Copy link

From a pratical perspective what's the simplest version of done for version one of this requirement? Am I wrong it's thinking it's very straight forward? Essentially a version of the flowchart with the following differences:

  1. No items can exist outside of subgraphs
  2. Only one layer of subgraphs
  3. For TD all subgraphs have to have the same width and have the same coordinates for their edges
  4. For LR all subgraphs have to have the same height and have the same coordinates for their edges

Would this work for a simple use case?

@AartBluestoke
Copy link

"From a practical perspective what's the simplest version of done for version one of this requirement? " - i think a connection type that forces the two connections to be in the same layer, rather than the child at a lower height of the parent.
-- that would generalize to many different chart types - eg: each horizontal line in the Opportunity chart above would be augmented with this link type - at the moment an attempt to create this chart would create 13 levels, when only 5 will allow the chart to be rendered ...
perhaps even a general solution that checks to see if the child Has to be at a lower level than the parent, and a link only sometimes increases the layer, rather than always ...

@raaannzzz
Copy link

Any hope here?

@bytesex
Copy link

bytesex commented Jun 12, 2024 via email

@andremoraes
Copy link

andremoraes commented Jun 13, 2024 via email

@shouguouo
Copy link

Any hope here?

1 similar comment
@pai-sy
Copy link

pai-sy commented Aug 13, 2024

Any hope here?

@BenjaminKrueger-TUD
Copy link

+1

@bytesex
Copy link

bytesex commented Sep 13, 2024 via email

@RobberFox
Copy link

+1 Those guys are AI-pilled. The important things don't matter anymore.

@AartBluestoke
Copy link

AI won't be able to layout diagrams appropriately unless the options are there for it to use ...

@boshiuchen
Copy link

Novice Javascript programming enthusiast here. Would be willing to put in the hours to get this done. Any suggestions on where to get things started? I mostly work with Python and have drawn with graphviz before, but the swimlane feature is what I will need at work and currently can't achieve that with graphviz.

@AartBluestoke
Copy link

AartBluestoke commented Oct 7, 2024

@boshiuchen

Novice Javascript programming enthusiast here. Would be willing to put in the hours to get this done. Any suggestions on where to get things started? I mostly work with Python and have drawn with graphviz before, but the swimlane feature is what I will need at work and currently can't achieve that with graphviz.

There are 2 parts to this:

  1. new syntax to indicate that a user wants 2 nodes to be at the same level
    • the syntax can be changed later, so a prototype can propose something sensible of your choice -
  2. the conceptual layout engine for a flowchart which calculates the row. It currently works recursivly with each recursion at a deeper "row" level - some of the code is at https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js#L295
    • an example layout engine update is referenced up-thread at ddc006e

@bytesex
Copy link

bytesex commented Oct 21, 2024 via email

@andremoraes
Copy link

The new blocks diagram can help with this now?

@boshiuchen
Copy link

Came across this python package that seems to be able to generate swim lane graphs by code. Will take a peak under the hood for how it's done.
Package name: ProcessPiper
https://github.com/csgoh/processpiper?tab=readme-ov-file

knsv added a commit that referenced this issue Dec 19, 2024
@hardchor
Copy link

hardchor commented Feb 4, 2025

Came here looking for swimlanes (I love swimlanes.io), saw this thread, was about to give up, but then literally the 2nd entry in the official docs is this: https://mermaid.js.org/syntax/sequenceDiagram.html

@atleta
Copy link

atleta commented Feb 5, 2025

Came here looking for swimlanes (I love swimlanes.io), saw this thread, was about to give up, but then literally the 2nd entry in the official docs is this: https://mermaid.js.org/syntax/sequenceDiagram.html

But a sequence diagram is not a swimlane diagram. (Even if swimlanes.io makes you think so.) A swimlanes diagram is a flowchart (type of diagram) organized into horizontal or vertical columns (swimlanes): https://en.wikipedia.org/wiki/Swimlane

@Capricornsong
Copy link

Almost 4 years, any updates on this :(

@bytesex
Copy link

bytesex commented Feb 13, 2025 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests