Skip to content

Instantly share code, notes, and snippets.

@tylergannon
Created February 24, 2026 21:16
Show Gist options
  • Select an option

  • Save tylergannon/9eb83f75120cf456c014238c3abc34d1 to your computer and use it in GitHub Desktop.

Select an option

Save tylergannon/9eb83f75120cf456c014238c3abc34d1 to your computer and use it in GitHub Desktop.
cat-monitor-user-story-generator
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: UserStoryGenerator Pages: 1 -->
<svg width="275pt" height="765pt"
viewBox="0.00 0.00 274.56 765.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 761)">
<title>UserStoryGenerator</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-761 270.56,-761 270.56,4 -4,4"/>
<!-- start -->
<g id="node1" class="node">
<title>start</title>
<polygon fill="none" stroke="black" points="139.28,-757 102.74,-739 139.28,-721 175.81,-739 139.28,-757"/>
<polyline fill="none" stroke="black" points="113.51,-744.3 113.51,-733.7 "/>
<polyline fill="none" stroke="black" points="128.51,-726.3 150.04,-726.3 "/>
<polyline fill="none" stroke="black" points="165.05,-733.7 165.05,-744.3 "/>
<polyline fill="none" stroke="black" points="150.04,-751.7 128.51,-751.7 "/>
<text text-anchor="middle" x="139.28" y="-735.3" font-family="Times,serif" font-size="14.00">start</text>
</g>
<!-- context -->
<g id="node3" class="node">
<title>context</title>
<ellipse fill="none" stroke="black" cx="139.28" cy="-667" rx="36.29" ry="18"/>
<text text-anchor="middle" x="139.28" y="-663.3" font-family="Times,serif" font-size="14.00">context</text>
</g>
<!-- start&#45;&gt;context -->
<g id="edge1" class="edge">
<title>start&#45;&gt;context</title>
<path fill="none" stroke="black" d="M139.28,-720.7C139.28,-712.98 139.28,-703.71 139.28,-695.11"/>
<polygon fill="black" stroke="black" points="142.78,-695.1 139.28,-685.1 135.78,-695.1 142.78,-695.1"/>
</g>
<!-- exit -->
<g id="node2" class="node">
<title>exit</title>
<polygon fill="none" stroke="black" points="151.78,-37 114.78,-37 114.78,0 151.78,0 151.78,-37"/>
<polyline fill="none" stroke="black" points="126.78,-37 114.78,-25 "/>
<polyline fill="none" stroke="black" points="114.78,-12 126.78,0 "/>
<polyline fill="none" stroke="black" points="139.78,0 151.78,-12 "/>
<polyline fill="none" stroke="black" points="151.78,-25 139.78,-37 "/>
<text text-anchor="middle" x="133.28" y="-14.8" font-family="Times,serif" font-size="14.00">exit</text>
</g>
<!-- empathize -->
<g id="node4" class="node thinking">
<title>empathize</title>
<ellipse fill="none" stroke="black" cx="139.28" cy="-595" rx="47.39" ry="18"/>
<text text-anchor="middle" x="139.28" y="-591.3" font-family="Times,serif" font-size="14.00">empathize</text>
</g>
<!-- context&#45;&gt;empathize -->
<g id="edge2" class="edge">
<title>context&#45;&gt;empathize</title>
<path fill="none" stroke="black" d="M139.28,-648.7C139.28,-640.98 139.28,-631.71 139.28,-623.11"/>
<polygon fill="black" stroke="black" points="142.78,-623.1 139.28,-613.1 135.78,-623.1 142.78,-623.1"/>
</g>
<!-- needs -->
<g id="node5" class="node thinking">
<title>needs</title>
<ellipse fill="none" stroke="black" cx="110.28" cy="-523" rx="30.59" ry="18"/>
<text text-anchor="middle" x="110.28" y="-519.3" font-family="Times,serif" font-size="14.00">needs</text>
</g>
<!-- empathize&#45;&gt;needs -->
<g id="edge3" class="edge">
<title>empathize&#45;&gt;needs</title>
<path fill="none" stroke="black" d="M132.26,-577.05C128.91,-568.97 124.83,-559.12 121.1,-550.11"/>
<polygon fill="black" stroke="black" points="124.29,-548.69 117.23,-540.79 117.83,-551.37 124.29,-548.69"/>
</g>
<!-- draft -->
<g id="node6" class="node">
<title>draft</title>
<ellipse fill="none" stroke="black" cx="97.28" cy="-451" rx="27.1" ry="18"/>
<text text-anchor="middle" x="97.28" y="-447.3" font-family="Times,serif" font-size="14.00">draft</text>
</g>
<!-- needs&#45;&gt;draft -->
<g id="edge4" class="edge">
<title>needs&#45;&gt;draft</title>
<path fill="none" stroke="black" d="M107.13,-505.05C105.7,-497.35 103.97,-488.03 102.36,-479.36"/>
<polygon fill="black" stroke="black" points="105.75,-478.47 100.49,-469.28 98.87,-479.75 105.75,-478.47"/>
</g>
<!-- reality_check -->
<g id="node7" class="node thinking">
<title>reality_check</title>
<ellipse fill="none" stroke="black" cx="90.28" cy="-379" rx="57.69" ry="18"/>
<text text-anchor="middle" x="90.28" y="-375.3" font-family="Times,serif" font-size="14.00">reality_check</text>
</g>
<!-- draft&#45;&gt;reality_check -->
<g id="edge5" class="edge">
<title>draft&#45;&gt;reality_check</title>
<path fill="none" stroke="black" d="M95.55,-432.7C94.78,-424.98 93.85,-415.71 92.99,-407.11"/>
<polygon fill="black" stroke="black" points="96.47,-406.71 91.99,-397.1 89.5,-407.4 96.47,-406.71"/>
</g>
<!-- gate -->
<g id="node8" class="node">
<title>gate</title>
<polygon fill="none" stroke="black" points="133.28,-325 0.22,-307 133.28,-289 266.33,-307 133.28,-325"/>
<text text-anchor="middle" x="133.28" y="-303.3" font-family="Times,serif" font-size="14.00">Stories human enough?</text>
</g>
<!-- reality_check&#45;&gt;gate -->
<g id="edge6" class="edge">
<title>reality_check&#45;&gt;gate</title>
<path fill="none" stroke="black" d="M100.69,-361.05C105.96,-352.47 112.46,-341.89 118.27,-332.44"/>
<polygon fill="black" stroke="black" points="121.3,-334.18 123.55,-323.83 115.34,-330.52 121.3,-334.18"/>
</g>
<!-- gate&#45;&gt;empathize -->
<g id="edge8" class="edge">
<title>gate&#45;&gt;empathize</title>
<path fill="none" stroke="black" d="M142.74,-324.08C148.17,-334.28 154.46,-347.97 157.28,-361 173.1,-434.28 156.7,-523.15 146.36,-566.94"/>
<polygon fill="black" stroke="black" points="142.92,-566.27 143.94,-576.82 149.72,-567.93 142.92,-566.27"/>
</g>
<!-- check_existing -->
<g id="node9" class="node">
<title>check_existing</title>
<ellipse fill="none" stroke="black" cx="133.28" cy="-235" rx="63.89" ry="18"/>
<text text-anchor="middle" x="133.28" y="-231.3" font-family="Times,serif" font-size="14.00">check_existing</text>
</g>
<!-- gate&#45;&gt;check_existing -->
<g id="edge7" class="edge">
<title>gate&#45;&gt;check_existing</title>
<path fill="none" stroke="black" d="M133.28,-288.7C133.28,-280.98 133.28,-271.71 133.28,-263.11"/>
<polygon fill="black" stroke="black" points="136.78,-263.1 133.28,-253.1 129.78,-263.1 136.78,-263.1"/>
</g>
<!-- create_gate -->
<g id="node10" class="node">
<title>create_gate</title>
<polygon fill="none" stroke="black" points="133.28,-181 30.39,-163 133.28,-145 236.17,-163 133.28,-181"/>
<text text-anchor="middle" x="133.28" y="-159.3" font-family="Times,serif" font-size="14.00">Room for issues?</text>
</g>
<!-- check_existing&#45;&gt;create_gate -->
<g id="edge9" class="edge">
<title>check_existing&#45;&gt;create_gate</title>
<path fill="none" stroke="black" d="M133.28,-216.7C133.28,-208.98 133.28,-199.71 133.28,-191.11"/>
<polygon fill="black" stroke="black" points="136.78,-191.1 133.28,-181.1 129.78,-191.1 136.78,-191.1"/>
</g>
<!-- create_gate&#45;&gt;exit -->
<g id="edge11" class="edge">
<title>create_gate&#45;&gt;exit</title>
<path fill="none" stroke="black" d="M128.14,-145.48C125.19,-135.12 121.78,-121.42 120.28,-109 118.36,-93.12 118.38,-88.89 120.28,-73 121.3,-64.46 123.21,-55.31 125.26,-47.04"/>
<polygon fill="black" stroke="black" points="128.7,-47.7 127.87,-37.14 121.93,-45.92 128.7,-47.7"/>
</g>
<!-- publish -->
<g id="node11" class="node">
<title>publish</title>
<ellipse fill="none" stroke="black" cx="165.28" cy="-91" rx="36.29" ry="18"/>
<text text-anchor="middle" x="165.28" y="-87.3" font-family="Times,serif" font-size="14.00">publish</text>
</g>
<!-- create_gate&#45;&gt;publish -->
<g id="edge10" class="edge">
<title>create_gate&#45;&gt;publish</title>
<path fill="none" stroke="black" d="M140.54,-146.12C144.32,-137.85 149.03,-127.54 153.33,-118.14"/>
<polygon fill="black" stroke="black" points="156.62,-119.35 157.6,-108.8 150.26,-116.44 156.62,-119.35"/>
</g>
<!-- publish&#45;&gt;exit -->
<g id="edge12" class="edge">
<title>publish&#45;&gt;exit</title>
<path fill="none" stroke="black" d="M157.69,-73.29C154.06,-65.28 149.61,-55.48 145.51,-46.45"/>
<polygon fill="black" stroke="black" points="148.57,-44.73 141.25,-37.07 142.2,-47.62 148.57,-44.73"/>
</g>
</g>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment