Subject: [PATCH] refactor(web/tvl): factor out common styles

From: [email-masked]
Date: Mon, 11 May 2020 00:59:13 +0100

From: Luke Granger-Brown <[email-masked]>

---
 web/tvl/tvl.dot | 333 +++++++++++++++++++++++++-----------------------
 1 file changed, 177 insertions(+), 156 deletions(-)

diff --git a/web/tvl/tvl.dot b/web/tvl/tvl.dot
index ee31fc3..529e8f8 100644
--- a/web/tvl/tvl.dot
+++ b/web/tvl/tvl.dot
@@ -7,168 +7,189 @@ digraph tvl {
   tazjin -> TVL [style="bold"];
 
   // people
-  Q [href="https://magicalcodewit.ch/"];
-  ac [href="https://the-alex.github.io/about/"];
-  andi [label="andi-" href="https://andreas.rammhold.de/"];
-  anon1 [color="grey" fontcolor="grey"];
-  aranea;
-  artemist [href="https://artem.ist/"];
-  aurora [href="https://nonegenderleftfox.aventine.se/"];
-  benjojo [href="https://benjojo.co.uk/"];
-  borb [href="https://twitter.com/FR31H31T"];
-  cynthia [href="https://cynthia.re/"];
-  drathier;
-  edef [href="https://edef.eu/files/edef.hs"];
-  ericvolp [href="https://ericv.me"];
-  espes;
-  eta [href="https://theta.eu.org/"];
-  firefly [href="http://firefly.nu/"];
-  flokli [href="https://flokli.de/"];
-  ghuntley [href="https://ghuntley.com/"];
-  glittershark [href="http://gws.fyi"];
-  grahamc [href="https://grahamc.com/"];
-  hexchen [href="https://hxchn.de"];
-  hyperfekt [href="https://hyperfekt.net"];
-  isomer [href="https://www.lorier.net/"];
-  jooiiee [href="https://jooiiee.se/"];
-  jusrin [href="https://jusrin.dev/"];
-  kanepyork [href="https://social.wxcafe.net/@riking"];
-  leah2 [href="https://leahneukirchen.org/"];
-  lukegb [href="https://lukegb.com/"];
-  marcusr [href="http://marcus.nordaaker.com/"];
-  maskerad [href="https://femalelegends.com/"];
-  multi [href="https://1.0.168.192.in-addr.xyz/"];
-  ncl;
-  poigon;
-  profpatsch [href="http://profpatsch.de/"];
-  puck [href="https://puckipedia.com/"];
-  q3k [href="https://q3k.org/"];
-  qyliss [href="https://alyssa.is"];
-  rcombs [href="http://rcombs.me/"];
-  seven [href="https://open.spotify.com/user/so7"];
-  tazjin [href="https://tazj.in/"];
-  tehhobbit;
-  wpcarro [href="https://wpcarro.dev/"];
-  yuuko;
+  subgraph {
+    Q [href="https://magicalcodewit.ch/"];
+    ac [href="https://the-alex.github.io/about/"];
+    andi [label="andi-" href="https://andreas.rammhold.de/"];
+    anon1 [color="grey" fontcolor="grey"];
+    aranea;
+    artemist [href="https://artem.ist/"];
+    aurora [href="https://nonegenderleftfox.aventine.se/"];
+    benjojo [href="https://benjojo.co.uk/"];
+    borb [href="https://twitter.com/FR31H31T"];
+    cynthia [href="https://cynthia.re/"];
+    drathier;
+    edef [href="https://edef.eu/files/edef.hs"];
+    ericvolp [href="https://ericv.me"];
+    espes;
+    eta [href="https://theta.eu.org/"];
+    firefly [href="http://firefly.nu/"];
+    flokli [href="https://flokli.de/"];
+    ghuntley [href="https://ghuntley.com/"];
+    glittershark [href="http://gws.fyi"];
+    grahamc [href="https://grahamc.com/"];
+    hexchen [href="https://hxchn.de"];
+    hyperfekt [href="https://hyperfekt.net"];
+    isomer [href="https://www.lorier.net/"];
+    jooiiee [href="https://jooiiee.se/"];
+    jusrin [href="https://jusrin.dev/"];
+    kanepyork [href="https://social.wxcafe.net/@riking"];
+    leah2 [href="https://leahneukirchen.org/"];
+    lukegb [href="https://lukegb.com/"];
+    marcusr [href="http://marcus.nordaaker.com/"];
+    maskerad [href="https://femalelegends.com/"];
+    multi [href="https://1.0.168.192.in-addr.xyz/"];
+    ncl;
+    poigon;
+    profpatsch [href="http://profpatsch.de/"];
+    puck [href="https://puckipedia.com/"];
+    q3k [href="https://q3k.org/"];
+    qyliss [href="https://alyssa.is"];
+    rcombs [href="http://rcombs.me/"];
+    seven [href="https://open.spotify.com/user/so7"];
+    tazjin [href="https://tazj.in/"];
+    tehhobbit;
+    wpcarro [href="https://wpcarro.dev/"];
+    yuuko;
+  }
 
   // companies (blue)
-  spotify [color="#4285f4" fontcolor="#4285f4" href="https://www.spotify.com/"];
-  google [color="#4285f4" fontcolor="#4285f4" href="https://www.google.com/"];
+  subgraph {
+    node [color="#4285f4" fontcolor="#4285f4"];
+    spotify [href="https://www.spotify.com/"];
+    google [href="https://www.google.com/"];
+  }
 
   // communities? (red)
-  eve [color="#DB4437" fontcolor="#DB4437" href="https://www.eveonline.com/"];
-  nix [color="#DB4437" fontcolor="#DB4437" href="https://nixos.org/nix/"];
-  ircv3 [color="#DB4437" fontcolor="#DB4437" href="https://ircv3.net/"];
-  lgbtslack [label="lgbt.tech" color="#DB4437" fontcolor="#DB4437" href="https://lgbtq.technology/"];
-  muccc [label="µccc" color="#DB4437" fontcolor="#DB4437" href="https://muc.ccc.de/"];
-  hswaw [label="hswaw" color="#DB4437" fontcolor="#DB4437" href="https://hackerspace.pl/"];
-  unspecific [color="grey" fontcolor="grey"];
-  baby [color="pink" fontcolor="pink" href="https://cynthia.re/s/baby"];
+  subgraph {
+    node [color="#db4437" fontcolor="#db4437"];
+    eve [href="https://www.eveonline.com/"];
+    nix [href="https://nixos.org/nix/"];
+    ircv3 [href="https://ircv3.net/"];
+    lgbtslack [label="lgbt.tech" href="https://lgbtq.technology/"];
+    muccc [label="µccc" href="https://muc.ccc.de/"];
+    hswaw [href="https://hackerspace.pl/"];
+  }
+
+  // special
+  subgraph {
+    baby [color="pink" fontcolor="pink" href="https://cynthia.re/s/baby"];
+    unspecific [color="grey" fontcolor="grey"];
+  }
 
   // primary edges (how did they end up in TVL?)
-
-  // Direct edges
-  nix -> tazjin;
-  spotify -> tazjin;
-  google -> tazjin;
-  eve -> tazjin;
-  unspecific -> tazjin;
-  edef -> tazjin;
-
-  // via nix
-  jusrin -> nix;
-  ghuntley -> nix;
-  flokli -> nix;
-  andi -> nix;
-  grahamc -> nix;
-  profpatsch -> nix;
-
-  // via edef
-  benjojo -> edef;
-  espes -> edef;
-  firefly -> edef;
-  leah2 -> aurora;
-  multi -> edef;
-  ncl -> edef;
-  puck -> edef;
-  qyliss -> edef;
-  rcombs -> edef;
-
-  // via spotify
-  tehhobbit -> spotify;
-  seven -> spotify;
-
-  // via google
-  lukegb -> google;
-  isomer -> google;
-  wpcarro -> google;
-
-  // random primary
-  Q -> cynthia;
-  ac -> wpcarro;
-  anon1 -> google;
-  aranea -> multi;
-  artemist -> cynthia;
-  aurora -> eve;
-  borb -> unspecific;
-  cynthia -> benjojo;
-  drathier -> maskerad;
-  eta -> anon1;
-  ericvolp -> lukegb;
-  glittershark -> wpcarro;
-  hexchen -> cynthia;
-  jooiiee -> unspecific;
-  kanepyork -> lukegb;
-  marcusr -> unspecific;
-  maskerad -> unspecific;
-  poigon -> eve;
-  q3k -> unspecific;
-  yuuko -> ncl;
-  hyperfekt -> espes;
+  subgraph {
+    // Direct edges
+    nix -> tazjin;
+    spotify -> tazjin;
+    google -> tazjin;
+    eve -> tazjin;
+    unspecific -> tazjin;
+    edef -> tazjin;
+
+    // via nix
+    jusrin -> nix;
+    ghuntley -> nix;
+    flokli -> nix;
+    andi -> nix;
+    grahamc -> nix;
+    profpatsch -> nix;
+
+    // via edef
+    benjojo -> edef;
+    espes -> edef;
+    firefly -> edef;
+    leah2 -> aurora;
+    multi -> edef;
+    ncl -> edef;
+    puck -> edef;
+    qyliss -> edef;
+    rcombs -> edef;
+
+    // via spotify
+    tehhobbit -> spotify;
+    seven -> spotify;
+
+    // via google
+    lukegb -> google;
+    isomer -> google;
+    wpcarro -> google;
+
+    // random primary
+    Q -> cynthia;
+    ac -> wpcarro;
+    anon1 -> google;
+    aranea -> multi;
+    artemist -> cynthia;
+    aurora -> eve;
+    borb -> unspecific;
+    cynthia -> benjojo;
+    drathier -> maskerad;
+    eta -> anon1;
+    ericvolp -> lukegb;
+    glittershark -> wpcarro;
+    hexchen -> cynthia;
+    jooiiee -> unspecific;
+    kanepyork -> lukegb;
+    marcusr -> unspecific;
+    maskerad -> unspecific;
+    poigon -> eve;
+    q3k -> unspecific;
+    yuuko -> ncl;
+    hyperfekt -> espes;
+  }
 
   // secondary edges (how are they connected otherwise?)
-
-  // lgbt slack
-  aurora -> lgbtslack [weight=0 style="dotted" color="grey" arrowhead="none"];
-  leah2 -> lgbtslack  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  edef -> lgbtslack  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  artemist -> lgbtslack  [weight=0 style="dotted" color="grey" arrowhead="none"];
-
-  // ircv3
-  multi -> ircv3  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  eta -> ircv3  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  firefly -> ircv3  [weight=0 style="dotted" color="grey" arrowhead="none"];
-
-  // µccc
-  leah2 -> muccc [weight=0 style="dotted" color="grey" arrowhead="none"];
-  hexchen -> muccc [weight=0 style="dotted" color="grey" arrowhead="none"];
-  q3k -> muccc [weight=0 style="dotted" color="grey" arrowhead="none"];
-
-  // hswaw
-  implr -> hswaw [weight=0 style="dotted" color="grey" arrowhead="none"];
-  q3k -> hswaw [weight=0 style="dotted" color="grey" arrowhead="none"];
-
-  // random
-  leah2 -> edef  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  lukegb -> isomer  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  eta -> multi  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  eta -> firefly  [weight=0 style="dotted" color="grey" arrowhead="none"];
-  cynthia -> firefly [weight=0 style="dotted" color="grey" arrowhead="none"];
-  cynthia -> lukegb [weight=0 style="dotted" color="grey" arrowhead="none"];
-  kanepyork -> google [weight=0 style="dotted" color="grey" arrowhead="none"];
-  lukegb -> benjojo [weight=0 style="dotted" color="grey" arrowhead="none"];
-  multi -> benjojo [weight=0 style="dotted" color="grey" arrowhead="none"];
-  espes -> benjojo [weight=0 style="dotted" color="grey" arrowhead="none"];
-  espes -> aurora [weight=0 style="dotted" color="grey" arrowhead="none"];
-  puck -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  qyliss -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  glittershark -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  edef -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  cynthia -> baby [weight=0 style="dotted" arrowhead="none" color="pink"];
-  eta -> baby [weight=0 style="dotted" arrowhead="none" color="pink"];
-  Q -> baby [weight=0 style="dotted" arrowhead="none" color="pink"];
-  aranea -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  aranea -> profpatsch [weight=0 style="dotted" color="grey" arrowhead="none"];
-  artemist -> nix [weight=0 style="dotted" color="grey" arrowhead="none"];
-  hyperfekt -> edef [weight=0 style="dotted" color="grey" arrowhead="none"];
+  subgraph {
+    edge [weight=0 style="dotted" color="grey" arrowhead="none"];
+
+    // lgbt slack
+    aurora -> lgbtslack;
+    leah2 -> lgbtslack;
+    edef -> lgbtslack;
+    artemist -> lgbtslack;
+
+    // ircv3
+    multi -> ircv3;
+    eta -> ircv3;
+    firefly -> ircv3;
+
+    // µccc
+    leah2 -> muccc;
+    hexchen -> muccc;
+    q3k -> muccc;
+
+    // hswaw
+    implr -> hswaw;
+    q3k -> hswaw;
+
+    // random
+    leah2 -> edef;
+    lukegb -> isomer;
+    eta -> multi;
+    eta -> firefly;
+    cynthia -> firefly;
+    cynthia -> lukegb;
+    kanepyork -> google;
+    lukegb -> benjojo;
+    multi -> benjojo;
+    espes -> benjojo;
+    espes -> aurora;
+    puck -> nix;
+    qyliss -> nix;
+    glittershark -> nix;
+    edef -> nix;
+    aranea -> nix;
+    aranea -> profpatsch;
+    artemist -> nix;
+    hyperfekt -> edef;
+  }
+
+  // baby
+  subgraph {
+    edge [weight=0 style="dotted" color="pink" arrowhead="none"];
+    cynthia -> baby;
+    eta -> baby;
+    Q -> baby;
+  }
 }
-- 
2.25.1