ossuminc / riddl

A compiler for the DDD-based design language RIDDL
https://riddl.tech/
Apache License 2.0
19 stars 6 forks source link

Mermaid: Context Map Diagram #576

Open AngeloChecked opened 4 months ago

AngeloChecked commented 4 months ago

Hi @reid-spencer !

I've been exploring Mermaid in my free time, and I've recently completed a simple prototype of the context map diagram (demo here | draft pr here). While it's modest in scope and there's still much tuning, fixing, and improvement needed. I found your project idea intriguing as mentioned here. I'm curious to learn more about your vision/idea. How may I offer contributions to this project(if I'm able), and how does it align with the integration of the context map diagram into Mermaid?

reid-spencer commented 4 months ago

Hi @AngeloChecked ! Thanks for dropping a note here. Here's some feedback

I'm curious to learn more about your vision/idea.

I haven't written a spec for context maps because it is pretty well laid out in the Blue Book on DDD. I recently completed a ContextMapDiagram and DomainMapDiagram which are both based on the D3 FlowChart with a builder for them here. I very much like that you've started to add a ContextMap type to Mermaid. I would definitely use it when it is released.

How may I offer contributions to this project

Just submit a PR in the usual way. However, I think what you're doing in Mermaid is also very valuable as I noted above.

(if I'm able),

This project uses Scala as its primary language so changes shouldn't be hard if you're familiar with that language. If not, you've got a steep learning curve.

and how does it align with the integration of the context map diagram into Mermaid?

It aligns well. There are a few things I would need to make it fit well with RIDDL:

AngeloChecked commented 3 months ago

hi @reid-spencer, As a fan of both Kotlin and Haskell, delving into Scala intrigues me. But right now, though, my focus is on implementing the context map in Mermaid. Once that's done, I can maybe use Riddl as a sort of user test to assess the quality of the final result. Keep in mind, though, that this project is just a hobby for me, so I can't say for sure when or if it will be good enough to be considered finished.