-
Notifications
You must be signed in to change notification settings - Fork 92
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
Graphical package overview #1101
base: master
Are you sure you want to change the base?
Conversation
33f8cba
to
342e6c5
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1101 +/- ##
=======================================
Coverage 93.57% 93.57%
=======================================
Files 39 39
Lines 6071 6071
=======================================
Hits 5681 5681
Misses 390 390 ☔ View full report in Codecov by Sentry. |
Nice flowcharts! Some quick comments,
An overall comment, |
Thanks for taking a look Knut!
I actually removed this one again, because it really messed around with the layouting again and most users do not need this anyway. I can add it back if you think it is important to show in the overview.
Probably, but I gave up with the styling at some point, as I could not get meaningful error message out of mermaid about what I am doing wrong. So I decided to give the different parts different node geometries instead, as I could get this one working.
The main purpose is the former, to show users on a high level how the commonly used main components in Ferrite are connected to each other. I hope that new users can grasp the overall architecture with more ease using this diagram. If there is anything else which can be imporved or if anything is missing just dump in in this PR and let us try to figure out how to add it then. |
TBH for me it's hard to follow both diagrams (no criticism, because it's hard to make them easy to follow, and I wouldn't know how to do it better). I would think that a diagram showing the typical workflow could be easier (e.g. for the heat eq. tutorial), but its hard to judge when already being so used to the way Ferrite works... And I'm more a fan of structured/aligned flowcharts, and would probably have made an svg instead of mermaid, but that is also just a matter of taste. And is again because I tend to think in workflow. But I do think having something like this would be very nice! So to be clear: I support going ahead in this direction, and then we can always improve/revise if we have even better ideas in the future! |
Perhaps there should be two diagrams, one which is "devdocs"-like describing dependencies between the types and another one which is "workflow"-like? |
If we want to add more diagrams, I think that for the devdocs it is beneficial to add (or generate) one for each component with more details, such that we see more how the internal types relate to each other. See e.g. CellValues internals. Regarding the workflow visualization, I am not very sure what exactly should be shown. Sequence diagrams? User journeys? |
Includes two proposals to resolve #696 .
A (f32cd96)
B (a926a13)
Open Questions
Should FerriteViz, FerriteGmsh and FerriteMeshParser be included in the figure?