commit dd4ccccd4c4fde9d0a3765c71a457f61214edf74
parent f4e310b5dd54a86f9939f7cfb4fe8db12f1e423c
Author: Erik Loualiche <eloualic@umn.edu>
Date: Fri, 3 Apr 2026 19:18:08 -0500
feat: add VHS demo tapes and GIFs for all three tools
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Diffstat:
11 files changed, 190 insertions(+), 0 deletions(-)
diff --git a/demo/dtcat.gif b/demo/dtcat.gif
Binary files differ.
diff --git a/demo/dtcat.tape b/demo/dtcat.tape
@@ -0,0 +1,50 @@
+# VHS tape for recording dtcat demo GIF.
+# Usage: vhs demo/dtcat.tape
+#
+# Prerequisites:
+# - dtcat binary built and in PATH
+# - Demo CSV files in demo/
+
+Output demo/dtcat.gif
+
+Set FontSize 14
+Set Width 1100
+Set Height 550
+Set Padding 15
+Set Theme "GruvboxDarkHard"
+
+Set TypingSpeed 80ms
+
+Set Shell "bash"
+
+Hide
+ Type 'export PS1="> "'
+ Enter
+ Type "clear"
+ Enter
+Show
+
+# ─── 1. VIEW A CSV FILE ───
+Type "dtcat demo/sales.csv"
+Enter
+Sleep 3s
+
+# ─── 2. SCHEMA ONLY ───
+Type "dtcat demo/sales.csv --schema"
+Enter
+Sleep 2s
+
+# ─── 3. SUMMARY STATISTICS ───
+Type "dtcat demo/sales.csv --describe"
+Enter
+Sleep 3s
+
+# ─── 4. HEAD AND TAIL ───
+Type "dtcat demo/sales.csv --head 3 --tail 2"
+Enter
+Sleep 2s
+
+# ─── 5. CSV OUTPUT ───
+Type "dtcat demo/sales.csv --csv --head 5"
+Enter
+Sleep 3s
diff --git a/demo/dtdiff.gif b/demo/dtdiff.gif
Binary files differ.
diff --git a/demo/dtdiff.tape b/demo/dtdiff.tape
@@ -0,0 +1,44 @@
+# VHS tape for recording dtdiff demo GIF.
+# Usage: vhs demo/dtdiff.tape
+#
+# Prerequisites:
+# - dtcat and dtdiff binaries built and in PATH
+# - Demo files in demo/
+
+Output demo/dtdiff.gif
+
+Set FontSize 14
+Set Width 1100
+Set Height 550
+Set Padding 15
+Set Theme "GruvboxDarkHard"
+
+Set TypingSpeed 80ms
+
+Set Shell "bash"
+
+Hide
+ Type 'export PS1="> "'
+ Enter
+ Type "clear"
+ Enter
+Show
+
+# ─── 1. SHOW THE INPUT FILES ───
+Type "dtcat demo/old.xlsx"
+Enter
+Sleep 3s
+
+Type "dtcat demo/new.xlsx"
+Enter
+Sleep 3s
+
+# ─── 2. KEY-BASED DIFF ───
+Type "dtdiff demo/old.xlsx demo/new.xlsx --key ID"
+Enter
+Sleep 4s
+
+# ─── 3. JSON OUTPUT ───
+Type "dtdiff demo/old.xlsx demo/new.xlsx --key ID --json"
+Enter
+Sleep 4s
diff --git a/demo/dtfilter.gif b/demo/dtfilter.gif
Binary files differ.
diff --git a/demo/dtfilter.tape b/demo/dtfilter.tape
@@ -0,0 +1,65 @@
+# VHS tape for recording dtfilter demo GIF.
+# Usage: vhs demo/dtfilter.tape
+#
+# Prerequisites:
+# - dtcat and dtfilter binaries built and in PATH
+# - Demo CSV files in demo/
+
+Output demo/dtfilter.gif
+
+Set FontSize 14
+Set Width 1100
+Set Height 550
+Set Padding 15
+Set Theme "GruvboxDarkHard"
+
+Set TypingSpeed 80ms
+
+Set Shell "bash"
+
+Hide
+ Type 'export PS1="> "'
+ Enter
+ Type "clear"
+ Enter
+Show
+
+# ─── 1. VIEW THE DATA ───
+Type "dtcat demo/sales.csv"
+Enter
+Sleep 3s
+
+# ─── 2. FILTER ROWS ───
+Type "dtfilter demo/sales.csv --filter Region=East"
+Enter
+Sleep 3s
+
+# ─── 3. NUMERIC COMPARISON ───
+Type "dtfilter demo/sales.csv --filter 'Revenue>12000'"
+Enter
+Sleep 3s
+
+# ─── 4. MULTIPLE FILTERS (AND) ───
+Type "dtfilter demo/sales.csv --filter Region=East --filter 'Revenue>12000'"
+Enter
+Sleep 3s
+
+# ─── 5. SELECT COLUMNS + SORT ───
+Type "dtfilter demo/sales.csv --columns Region,Product,Revenue --sort Revenue:desc"
+Enter
+Sleep 3s
+
+# ─── 6. LIMIT OUTPUT ───
+Type "dtfilter demo/sales.csv --sort Revenue:desc --limit 3 --columns Product,Revenue"
+Enter
+Sleep 2s
+
+# ─── 7. CONTAINS FILTER ───
+Type "dtfilter demo/sales.csv --filter 'Product~Widget A' --columns Date,Region,Revenue"
+Enter
+Sleep 3s
+
+# ─── 8. CSV OUTPUT FOR PIPING ───
+Type "dtfilter demo/sales.csv --filter Region=West --csv"
+Enter
+Sleep 3s
diff --git a/demo/new.csv b/demo/new.csv
@@ -0,0 +1,6 @@
+ID,Name,Department,Salary
+1,Alice,Engineering,98000
+2,Bob,Design,75000
+4,Diana,Sales,67000
+5,Eve,Marketing,74000
+6,Frank,Engineering,92000
diff --git a/demo/new.xlsx b/demo/new.xlsx
Binary files differ.
diff --git a/demo/old.csv b/demo/old.csv
@@ -0,0 +1,6 @@
+ID,Name,Department,Salary
+1,Alice,Engineering,95000
+2,Bob,Marketing,72000
+3,Charlie,Engineering,88000
+4,Diana,Sales,67000
+5,Eve,Marketing,71000
diff --git a/demo/old.xlsx b/demo/old.xlsx
Binary files differ.
diff --git a/demo/sales.csv b/demo/sales.csv
@@ -0,0 +1,19 @@
+Date,Region,Product,Revenue,Units
+2024-01-05,East,Widget A,12500,250
+2024-01-12,West,Widget B,8700,145
+2024-01-19,East,Widget C,15300,310
+2024-02-02,West,Widget A,9200,184
+2024-02-14,East,Widget B,11800,236
+2024-02-28,West,Widget C,7600,127
+2024-03-05,East,Widget A,14100,282
+2024-03-15,West,Widget B,10500,175
+2024-03-22,East,Widget C,16800,340
+2024-04-01,West,Widget A,8900,178
+2024-04-10,East,Widget B,13200,264
+2024-04-18,West,Widget C,9800,163
+2024-05-03,East,Widget A,11400,228
+2024-05-14,West,Widget B,7300,122
+2024-05-25,East,Widget C,14700,294
+2024-06-01,West,Widget A,10100,202
+2024-06-12,East,Widget B,12600,252
+2024-06-20,West,Widget C,8400,140