Myrmornis 1 day ago

https://d2lang.com/ is a nicer language than Mermaid with much nicer visual appearance. It would be great if it became more widely supported.

  • growrow 1 day ago

    What makes it nicer?

    • Myrmornis 1 day ago

      Take a look at https://d2lang.com/examples/dagre/ and https://d2lang.com/tour/intro/

      The language is richer and all diagram types are implemented consistently in the same language in a way that can be composed, as opposed to being a collection of unrelated DSLs.

      The improved visual appearance is clear from inspecting example diagrams, I believe.

  • lugao 1 day ago

    Does it produce real svgs as opposed to foreign object html in svg mess that mermaid compilers produce?

    • troyvit 5 hours ago

      d2 produces real svgs but I've found them to have a hard time displaying in other svg editors. The d2 folks talk about that somewhere and they have some fixes for it.

  • erajasekar 1 day ago

    I reached the same conclusion after comparing diagram-as-code tools — D2 feels cleaner and more expressive than Mermaid.

    I’ve been working on an AI diagramming tool built around D2: https://aidiagrammaker.com/ You describe a system in plain English, and it generates architecture diagrams, flowcharts, and sequence diagrams in D2.

    Edits can be made either directly in the D2 code or via a context-aware editor.

  • neuronexmachina 1 day ago

    I agree that it's nicer and more powerful, but it's a little concerning it hasn't had any commits in the past 6 months: https://github.com/terrastruct/d2/commits/master/

    • nine_k 1 day ago

      Maybe it doesn't need constant fixing? Are there many issues in the tracker?

    • 16bitvoid 1 day ago

      I think the founder/lead developer, Alexander Wang, works at OpenAI now.

      Plus, according to this comment on an issue, folks in their discord say it's not being actively maintained.

      https://github.com/terrastruct/d2/issues/2735#issuecomment-4...

      • vladsanchez 1 day ago

        Never imagined Scale.ai CEO was D2Lang creator nor that he joined his room-mate at OpenAI (giggle).

        Thanks for sharing

        • 16bitvoid 16 hours ago

          Scale AI is a different Alex. Their first names are spelled slightly different. Alexandr vs Alexander

  • spacecow 1 day ago

    Oh, finally, something that supports actual hierarchical state diagrams (that isn't Graphviz, no offense)... Mermaid's "You cannot define transitions between internal states belonging to different composite states" [1] has driven me up a wall for years.

      parentA.childA -> parentB.childB: voop
      parentB.childB -> parentA: vorp 
    

    shouldn't be that hard!

    [1] https://mermaid.ai/open-source/syntax/stateDiagram.html#comp...

  • pastelsky 21 hours ago

    Thanks for sharing! I haven’t looked into that before but looks neat.

pastelsky 21 hours ago

Author here - thanks for all the support (and bug reports)!

I built pretty.fish with the belief that Mermaid diagrams don’t have to look like they’re from the 80s and to avoid squinting at Mermaid diagrams that coding agents create in tiny windows.

Having them on canvas also makes it easier to keep a track of, and even visualize agent steps as and when they are are being taken (if you connect an MCP you get a pretty nice view of agent building its knowledge graph for eg for a problem).

Didn’t expect it to take off like this—there are still rough edges (pan/zoom, mobile), but I’m working on smoothing those out soon.

juancn 1 day ago

It's pretty but I don't know about better.

- How do you pan? Two finger sliding on the trackpad just zooms.

- Why does the diagram you're working on doesn't use all the remaining space? I picked one example and it's on a small-ish box with controls that don't seem to do anything and half of it is out the screen on the bottom

Ohh... the scroll metaphor... it's annoying. A bunch of tabs would have been better or even a one at a time with a tree somewhere.

There's too much fighting with layout where a plain interface would be better, something closer to https://mermaid.live/

laserbeam 1 day ago

The first thing I tried to do is resize that rectangle in the default diagram... and the resize handles do not affect the height, only the width. What is this "better" than?

smusamashah 1 day ago

How is this one better? I thought this was going to be a visual editor where you click and edit on the diagram itself. I don't seem to be able to do that here.

Arubis 1 day ago

I will grant this: that's a brilliant name and domain.

lo1tuma 1 day ago

I actually like Mermaid’s text-based approach a lot and wouldn’t want to replace it with a visual editor.

Where I do see room for improvement is the rendering quality. A lot of diagrams end up looking a bit rough, especially with arrow routing and layout, which can feel somewhat arbitrary.

Better layout/rendering would probably add more value (for me at least) than improving the editing experience.

jggonz 22 hours ago

Interesting timing and similarity with something I built last month! :)

I built https://fishygram.com with a DSL you can copy and paste into ChatGPT to build diagrams for you.

You can take a look at the examples to see what it can do.

  • totetsu 19 hours ago

    I'm always frustrated by how bad LLMs seem to be at making mermaid text without parsing errors all through it.

pastelsky 1 week ago

- Write Mermaid diagrams with a live preview. - Arrange multiple diagrams on an infinite canvas. - Group diagrams into multi-page projects. - Better themes

  • Flavius 1 day ago

    Make no mistakes.

Lord_Zero 1 day ago

How does the agent session thing work? Server-side you proxy requests to client via websockets or something? How does the agent see the client-side data?

rdos 1 day ago

I can't seem to change the colors of the pie chart, other than the predefined themes. But all of those are horrible for a pie chart.

  • jsmith45 1 day ago

    Yeah, as far as I know, you need to define a customized theme to customize pie chart colors. You can prepend the chart with initialization logic like:

    %%{init: {"theme": "base", "themeVariables": { "pie1": "#FF5733", "pie2": "#33FF57", "pie3": "#3357FF", "pieStrokeColor": "#000000", "pieStrokeWidth": 3, "pieOpacity": 0.8 }}}%%

    This looks like it works on this site too.

  • pjot 1 day ago

    To be fair, pie charts are horrible in general.