Skip to content

Commit ed25b15

Browse files
committed
docs(demos) Record every CLI command
why: The only demo asset in the tree was a single aging GIF referenced from the README and docs index. It predates most of the CLI, so nine of the ten subcommands had no visual documentation at all. what: - Record all ten subcommands (plus list --tree) as VHS tapes, rendering GIF/MP4/WebM, alongside asciinema casts and agg-generated GIFs - Drive every demo against a sandboxed HOME/XDG_CONFIG_HOME so recorded paths render as ~/code/... instead of a developer's real layout - Size each tape to the rows its command actually occupies, so no demo clips its output or trails dead space - Add setup-sandbox.sh, which builds the config and repos the tapes record against, so any tape can be re-rendered from a clean machine
1 parent b3c54cb commit ed25b15

67 files changed

Lines changed: 914 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
{"version":3,"term":{"cols":120,"rows":9},"timestamp":1783863920,"idle_time_limit":1.0,"command":"vcspull add ~/code/rust/ripgrep -y; sleep 2","title":"vcspull add","env":{"SHELL":"/bin/zsh"}}
2+
[0.15,"o","\u001b[34m$\u001b[0m "]
3+
[0.05,"o","v"]
4+
[0.05,"o","c"]
5+
[0.05,"o","s"]
6+
[0.05,"o","p"]
7+
[0.05,"o","u"]
8+
[0.05,"o","l"]
9+
[0.05,"o","l"]
10+
[0.05,"o"," "]
11+
[0.05,"o","a"]
12+
[0.05,"o","d"]
13+
[0.05,"o","d"]
14+
[0.05,"o"," "]
15+
[0.05,"o","~"]
16+
[0.05,"o","/"]
17+
[0.05,"o","c"]
18+
[0.05,"o","o"]
19+
[0.05,"o","d"]
20+
[0.05,"o","e"]
21+
[0.05,"o","/"]
22+
[0.05,"o","r"]
23+
[0.05,"o","u"]
24+
[0.05,"o","s"]
25+
[0.05,"o","t"]
26+
[0.05,"o","/"]
27+
[0.05,"o","r"]
28+
[0.05,"o","i"]
29+
[0.05,"o","p"]
30+
[0.05,"o","g"]
31+
[0.05,"o","r"]
32+
[0.05,"o","e"]
33+
[0.05,"o","p"]
34+
[0.05,"o"," "]
35+
[0.05,"o","-"]
36+
[0.05,"o","y"]
37+
[0.20,"o","\r\n"]
38+
[0.121,"o","\u001b[32mFound new repository to import:\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mripgrep\u001b[0m (\u001b[33mhttps://github.com/BurntSushi/ripgrep.git\u001b[0m)\r\n \u001b[34m•\u001b[0m workspace: \u001b[35m~/code/rust/\u001b[0m"]
39+
[0.000,"o","\r\n"]
40+
[0.000,"o"," \u001b[34m↳\u001b[0m path: \u001b[34m~/code/rust/ripgrep\u001b[0m\r\n"]
41+
[0.001,"o","\u001b[36m?\u001b[0m Import this repository? [y/N]: \u001b[32my (auto-confirm)\u001b[0m\r\n"]
42+
[0.003,"o","\u001b[32m✓\u001b[0m Successfully added \u001b[36m'ripgrep'\u001b[0m (\u001b[33mgit+https://github.com/BurntSushi/ripgrep.git\u001b[0m) to \u001b[34m~/.vcspull.yaml\u001b[0m under '\u001b[35m~/code/rust/\u001b[0m'.\r\n"]
43+
[2.027,"x","0"]
33.5 KB
Loading
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{"version":3,"term":{"cols":120,"rows":14},"timestamp":1783863911,"idle_time_limit":1.0,"command":"vcspull discover ~/code --recursive --dry-run; sleep 2","title":"vcspull discover","env":{"SHELL":"/bin/zsh"}}
2+
[0.15,"o","\u001b[34m$\u001b[0m "]
3+
[0.05,"o","v"]
4+
[0.05,"o","c"]
5+
[0.05,"o","s"]
6+
[0.05,"o","p"]
7+
[0.05,"o","u"]
8+
[0.05,"o","l"]
9+
[0.05,"o","l"]
10+
[0.05,"o"," "]
11+
[0.05,"o","d"]
12+
[0.05,"o","i"]
13+
[0.05,"o","s"]
14+
[0.05,"o","c"]
15+
[0.05,"o","o"]
16+
[0.05,"o","v"]
17+
[0.05,"o","e"]
18+
[0.05,"o","r"]
19+
[0.05,"o"," "]
20+
[0.05,"o","~"]
21+
[0.05,"o","/"]
22+
[0.05,"o","c"]
23+
[0.05,"o","o"]
24+
[0.05,"o","d"]
25+
[0.05,"o","e"]
26+
[0.05,"o"," "]
27+
[0.05,"o","-"]
28+
[0.05,"o","-"]
29+
[0.05,"o","r"]
30+
[0.05,"o","e"]
31+
[0.05,"o","c"]
32+
[0.05,"o","u"]
33+
[0.05,"o","r"]
34+
[0.05,"o","s"]
35+
[0.05,"o","i"]
36+
[0.05,"o","v"]
37+
[0.05,"o","e"]
38+
[0.05,"o"," "]
39+
[0.05,"o","-"]
40+
[0.05,"o","-"]
41+
[0.05,"o","d"]
42+
[0.05,"o","r"]
43+
[0.05,"o","y"]
44+
[0.05,"o","-"]
45+
[0.05,"o","r"]
46+
[0.05,"o","u"]
47+
[0.05,"o","n"]
48+
[0.20,"o","\r\n"]
49+
[0.137,"o","\r\n\u001b[32mFound 4 new repositories to preview:\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mripgrep\u001b[0m (\u001b[33mhttps://github.com/BurntSushi/ripgrep.git\u001b[0m)\r\n \u001b[32m+\u001b[0m \u001b[36mflask\u001b[0m (\u001b[33mhttps://github.com/pallets/flask.git\u001b[0m)\r\n \u001b[34m•\u001b[0m shallow: \u001b[33mtrue\u001b[0m\r\n"]
50+
[0.000,"o"," \u001b[32m+\u001b[0m \u001b[36mclick\u001b[0m (\u001b[33mhttps://github.com/pallets/click.git\u001b[0m)\r\n"]
51+
[0.000,"o"," \u001b[34m•\u001b[0m shallow: \u001b[33mtrue\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mhttpx\u001b[0m (\u001b[33mhttps://github.com/encode/httpx.git\u001b[0m)\r\n"]
52+
[0.000,"o"," \u001b[34m•\u001b[0m shallow: \u001b[33mtrue\u001b[0m\r\n"]
53+
[0.000,"o","\r\n\u001b[33m→\u001b[0m Dry run complete. No changes made to \u001b[34m~/.vcspull.yaml\u001b[0m.\r\n"]
54+
[2.026,"x","0"]
37.5 KB
Loading
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{"version":3,"term":{"cols":120,"rows":9},"timestamp":1783863913,"idle_time_limit":1.0,"command":"vcspull fmt; sleep 2","title":"vcspull fmt","env":{"SHELL":"/bin/zsh"}}
2+
[0.15,"o","\u001b[34m$\u001b[0m "]
3+
[0.05,"o","v"]
4+
[0.05,"o","c"]
5+
[0.05,"o","s"]
6+
[0.05,"o","p"]
7+
[0.05,"o","u"]
8+
[0.05,"o","l"]
9+
[0.05,"o","l"]
10+
[0.05,"o"," "]
11+
[0.05,"o","f"]
12+
[0.05,"o","m"]
13+
[0.05,"o","t"]
14+
[0.20,"o","\r\n"]
15+
[0.116,"o","\u001b[36mi\u001b[0m Found \u001b[33m9\u001b[0m formatting issues in \u001b[34m~/.vcspull.yaml\u001b[0m\r\n \u001b[34m•\u001b[0m 5 repositories from compact to verbose format\r\n \u001b[34m•\u001b[0m 3 repositories from 'url' to 'repo' key\r\n \u001b[34m•\u001b[0m Directories will be sorted alphabetically\r\n\r\n\u001b[33m→\u001b[0m Run with \u001b[36m--write\u001b[0m to apply these formatting changes.\r\n"]
16+
[2.027,"x","0"]
16.4 KB
Loading
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
{"version":3,"term":{"cols":120,"rows":20},"timestamp":1783863922,"idle_time_limit":1.0,"command":"vcspull import github pallets --mode org -w ~/code/python --limit 5 --https --dry-run; sleep 2","title":"vcspull import","env":{"SHELL":"/bin/zsh"}}
2+
[0.15,"o","\u001b[34m$\u001b[0m "]
3+
[0.05,"o","v"]
4+
[0.05,"o","c"]
5+
[0.05,"o","s"]
6+
[0.05,"o","p"]
7+
[0.05,"o","u"]
8+
[0.05,"o","l"]
9+
[0.05,"o","l"]
10+
[0.05,"o"," "]
11+
[0.05,"o","i"]
12+
[0.05,"o","m"]
13+
[0.05,"o","p"]
14+
[0.05,"o","o"]
15+
[0.05,"o","r"]
16+
[0.05,"o","t"]
17+
[0.05,"o"," "]
18+
[0.05,"o","g"]
19+
[0.05,"o","i"]
20+
[0.05,"o","t"]
21+
[0.05,"o","h"]
22+
[0.05,"o","u"]
23+
[0.05,"o","b"]
24+
[0.05,"o"," "]
25+
[0.05,"o","p"]
26+
[0.05,"o","a"]
27+
[0.05,"o","l"]
28+
[0.05,"o","l"]
29+
[0.05,"o","e"]
30+
[0.05,"o","t"]
31+
[0.05,"o","s"]
32+
[0.05,"o"," "]
33+
[0.05,"o","-"]
34+
[0.05,"o","-"]
35+
[0.05,"o","m"]
36+
[0.05,"o","o"]
37+
[0.05,"o","d"]
38+
[0.05,"o","e"]
39+
[0.05,"o"," "]
40+
[0.05,"o","o"]
41+
[0.05,"o","r"]
42+
[0.05,"o","g"]
43+
[0.05,"o"," "]
44+
[0.05,"o","-"]
45+
[0.05,"o","w"]
46+
[0.05,"o"," "]
47+
[0.05,"o","~"]
48+
[0.05,"o","/"]
49+
[0.05,"o","c"]
50+
[0.05,"o","o"]
51+
[0.05,"o","d"]
52+
[0.05,"o","e"]
53+
[0.05,"o","/"]
54+
[0.05,"o","p"]
55+
[0.05,"o","y"]
56+
[0.05,"o","t"]
57+
[0.05,"o","h"]
58+
[0.05,"o","o"]
59+
[0.05,"o","n"]
60+
[0.05,"o"," "]
61+
[0.05,"o","-"]
62+
[0.05,"o","-"]
63+
[0.05,"o","l"]
64+
[0.05,"o","i"]
65+
[0.05,"o","m"]
66+
[0.05,"o","i"]
67+
[0.05,"o","t"]
68+
[0.05,"o"," "]
69+
[0.05,"o","5"]
70+
[0.05,"o"," "]
71+
[0.05,"o","-"]
72+
[0.05,"o","-"]
73+
[0.05,"o","h"]
74+
[0.05,"o","t"]
75+
[0.05,"o","t"]
76+
[0.05,"o","p"]
77+
[0.05,"o","s"]
78+
[0.05,"o"," "]
79+
[0.05,"o","-"]
80+
[0.05,"o","-"]
81+
[0.05,"o","d"]
82+
[0.05,"o","r"]
83+
[0.05,"o","y"]
84+
[0.05,"o","-"]
85+
[0.05,"o","r"]
86+
[0.05,"o","u"]
87+
[0.05,"o","n"]
88+
[0.20,"o","\r\n"]
89+
[0.119,"o","\u001b[36m→\u001b[0m Fetching repositories from \u001b[35mGitHub\u001b[0m...\r\n"]
90+
[0.626,"o","Showing 5 repositories; more may be available (use --limit 0 to fetch all)\r\n\r\n\u001b[32m✓\u001b[0m Found \u001b[36m5\u001b[0m repositories\r\n \u001b[32m+\u001b[0m \u001b[36mjinja\u001b[0m\u001b[34m [Python]\u001b[0m\u001b[34m ★11684\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mflask\u001b[0m\u001b[34m [Python]\u001b[0m\u001b[34m ★71941\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mclick\u001b[0m\u001b[34m [Python]\u001b[0m\u001b[34m ★17578\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mitsdangerous\u001b[0m\u001b[34m [Python]\u001b[0m\u001b[34m ★3125\u001b[0m\r\n \u001b[32m+\u001b[0m \u001b[36mwerkzeug\u001b[0m\u001b[34m [Python]\u001b[0m\u001b[34m ★6876\u001b[0m\r\n"]
91+
[0.002,"o","[DRY-RUN] Would add: jinja → git+https://github.com/pallets/jinja.git\r\n[DRY-RUN] Would add: itsdangerous → git+https://github.com/pallets/itsdangerous.git\r\n[DRY-RUN] Would add: werkzeug → git+https://github.com/pallets/werkzeug.git\r\n"]
92+
[0.000,"o","[DRY-RUN] Would add \u001b[36m3\u001b[0m repositories\r\n[DRY-RUN] Would tag \u001b[36m2\u001b[0m repositories with import provenance\r\n[DRY-RUN] \u001b[36m2\u001b[0m repositories unchanged\r\n"]
93+
[0.000,"o","\r\n"]
94+
[0.000,"o","\u001b[33m→\u001b[0m Dry run complete. Would write to \u001b[34m~/.vcspull.yaml\u001b[0m\r\n"]
95+
[2.027,"x","0"]
66.7 KB
Loading
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
{"version":3,"term":{"cols":120,"rows":17},"timestamp":1783863904,"idle_time_limit":1.0,"command":"vcspull list --tree; sleep 2","title":"vcspull list-tree","env":{"SHELL":"/bin/zsh"}}
2+
[0.15,"o","\u001b[34m$\u001b[0m "]
3+
[0.05,"o","v"]
4+
[0.05,"o","c"]
5+
[0.05,"o","s"]
6+
[0.05,"o","p"]
7+
[0.05,"o","u"]
8+
[0.05,"o","l"]
9+
[0.05,"o","l"]
10+
[0.05,"o"," "]
11+
[0.05,"o","l"]
12+
[0.05,"o","i"]
13+
[0.05,"o","s"]
14+
[0.05,"o","t"]
15+
[0.05,"o"," "]
16+
[0.05,"o","-"]
17+
[0.05,"o","-"]
18+
[0.05,"o","t"]
19+
[0.05,"o","r"]
20+
[0.05,"o","e"]
21+
[0.05,"o","e"]
22+
[0.20,"o","\r\n"]
23+
[0.125,"o","\r\n\u001b[35m~/code/c/\u001b[0m\r\n \u001b[34m•\u001b[0m \u001b[36mjq\u001b[0m \u001b[34m→\u001b[0m ~/code/c/jq\r\n \u001b[34m•\u001b[0m \u001b[36mtmux\u001b[0m \u001b[34m→\u001b[0m ~/code/c/tmux\r\n\r\n\u001b[35m~/code/go/\u001b[0m\r\n \u001b[34m•\u001b[0m \u001b[36mbubbletea\u001b[0m \u001b[34m→\u001b[0m ~/code/go/bubbletea\r\n \u001b[34m•\u001b[0m \u001b[36mfzf\u001b[0m \u001b[34m→\u001b[0m ~/code/go/fzf\r\n \u001b[34m•\u001b[0m \u001b[36mgin\u001b[0m \u001b[34m→\u001b[0m ~/code/go/gin\r\n\r\n\u001b[35m~/code/python/\u001b[0m\r\n \u001b[34m•\u001b[0m \u001b[36mclick\u001b[0m \u001b[34m→\u001b[0m ~/code/python/click\r\n \u001b[34m•\u001b[0m \u001b[36mflask\u001b[0m \u001b[34m→\u001b[0m ~/code/python/flask\r\n"]
24+
[0.000,"o"," \u001b[34m•\u001b[0m \u001b[36mhttpx\u001b[0m \u001b[34m→\u001b[0m ~/code/python/httpx\r\n"]
25+
[2.022,"x","0"]
21.2 KB
Loading

0 commit comments

Comments
 (0)