myinfra
DFB
myinfra | DFB | |
---|---|---|
2 | 1 | |
41 | 10 | |
- | - | |
1.8 | 10.0 | |
about 3 years ago | about 4 years ago | |
Python | C# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
myinfra
-
Graphviz: Open-source graph visualization software
Graphviz is awesome!
Here are a couple of my diagrams:
https://beepb00p.xyz/blog-graph.html -- graph of my blog pages with tags/connections between posts, generated with a DSL-ish python script https://github.com/karlicoss/beepb00p/blob/master/misc/index...
https://beepb00p.xyz/myinfra.html -- map of my personal data & infrastructure (discussed a year ago https://news.ycombinator.com/item?id=26269832 ). Also a similar DSL https://github.com/karlicoss/myinfra/blob/master/generate.py
The main downside for me is that sometimes it gets the positioning wrong, and you can see how it can be easily fixed, but it's hard to convince graphviz to actually do so. Basically I'd love a tool where I can do 10% of positioning manually and let the rest be constraint based like in graphviz.
-
Map of my personal data infrastructure
Not the first time, but possibly the biggest thing I've drawn in it...
There definitely are some weird things when you try to plot complicated things, fighting with weird placement, clusters etc. But not sure if it's me or Graphviz to blame for this. But I don't really know a better tool. If I knew how the diagram would look in hindsight I might have drawn in manually in inkscape or something, but when I started I didn't know what I would end up with, so needed to be an automatic tool :)
To minimize the manual work, I ended up with a mix of DSL in python and raw graphviz commands: https://github.com/karlicoss/myinfra/blob/fc6345c31c4e49b534...
Depending on the things you want to represent a better fit might be force layout, for example something like https://observablehq.com/@morvasaaty/d3-force-notes
DFB
-
Graphviz: Open-source graph visualization software
I've used GraphViz a number of times and highly recommend it as a standard tool on your belt. Having a stand-alone executable that can export to SVG is great.
The most complex thing I've done with it [1]: a tool (MIT-license) that builds diagrams of the data and addressing pipeline for a DSP processor, and lets one 'scrub through' the assembler code frame by frame and see the values propagate through the blocks.
Also PlantUML [2] uses it for most diagrams.
Getting layout and positioning the way you want can be tricky but is usually achievable with patience and hidden objects.
[1] https://github.com/paphillips/DFB
What are some alternatives?
awesome-quantified-self - :bar_chart: Websites, Resources, Devices, Wearables, Applications, and Platforms for Self Tracking
PMapper - A tool for quickly evaluating IAM permissions in AWS.
object_playground - A tool for visualizing and experimenting with JavaScript object relationships.
d3-dag - Layout algorithms for visualizing directed acyclic graphs
embedded-struct-visualizer - Tool to visualize the graph of embedded structs in Go projects
mdbook-graphviz
hpcc-js-wasm - HPCC-Systems Web-Assembly (JavaScript)
plantuml - Generate diagrams from textual description
PSGraph - A set of utilities for working with Graphviz in Powershell
src - LPIC2 Exam Prep
sketchviz - A command line clone of https://sketchviz.com/