commit e18d92762617d50ae79422b38a45e999d55efaa6
parent c943e393050777ab5305ac65cef3ff1ab7db8a83
Author: Erik Loualiche <eloualic@umn.edu>
Date: Mon, 30 Mar 2026 23:09:53 -0500
feat: scaffold dt-cli-tools project structure
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat:
17 files changed, 62 insertions(+), 0 deletions(-)
diff --git a/Cargo.toml b/Cargo.toml
@@ -0,0 +1,47 @@
+[package]
+name = "dt-cli-tools"
+version = "0.1.0"
+edition = "2024"
+description = "CLI tools for viewing, filtering, and comparing tabular data files"
+license = "MIT"
+
+[lib]
+name = "dtcore"
+path = "src/lib.rs"
+
+[[bin]]
+name = "dtcat"
+path = "src/bin/dtcat.rs"
+
+[[bin]]
+name = "dtfilter"
+path = "src/bin/dtfilter.rs"
+
+[[bin]]
+name = "dtdiff"
+path = "src/bin/dtdiff.rs"
+
+[dependencies]
+polars = { version = "0.46", default-features = false, features = [
+ "dtype-datetime",
+ "csv",
+ "parquet",
+ "ipc",
+ "json",
+] }
+calamine = "0.26"
+clap = { version = "4", features = ["derive"] }
+anyhow = "1"
+serde_json = { version = "1", features = ["preserve_order"] }
+
+[profile.release]
+strip = true
+lto = true
+codegen-units = 1
+panic = "abort"
+opt-level = "z"
+
+[dev-dependencies]
+assert_cmd = "2"
+predicates = "3"
+tempfile = "3"
diff --git a/src/bin/dtcat.rs b/src/bin/dtcat.rs
@@ -0,0 +1 @@
+fn main() {}
diff --git a/src/bin/dtdiff.rs b/src/bin/dtdiff.rs
@@ -0,0 +1 @@
+fn main() {}
diff --git a/src/bin/dtfilter.rs b/src/bin/dtfilter.rs
@@ -0,0 +1 @@
+fn main() {}
diff --git a/src/diff.rs b/src/diff.rs
diff --git a/src/filter.rs b/src/filter.rs
diff --git a/src/format.rs b/src/format.rs
diff --git a/src/formatter.rs b/src/formatter.rs
diff --git a/src/lib.rs b/src/lib.rs
@@ -0,0 +1,7 @@
+pub mod diff;
+pub mod filter;
+pub mod format;
+pub mod formatter;
+pub mod metadata;
+pub mod reader;
+pub mod readers;
diff --git a/src/metadata.rs b/src/metadata.rs
diff --git a/src/reader.rs b/src/reader.rs
diff --git a/src/readers/arrow.rs b/src/readers/arrow.rs
diff --git a/src/readers/csv.rs b/src/readers/csv.rs
diff --git a/src/readers/excel.rs b/src/readers/excel.rs
diff --git a/src/readers/json.rs b/src/readers/json.rs
diff --git a/src/readers/mod.rs b/src/readers/mod.rs
@@ -0,0 +1,5 @@
+pub mod arrow;
+pub mod csv;
+pub mod excel;
+pub mod json;
+pub mod parquet;
diff --git a/src/readers/parquet.rs b/src/readers/parquet.rs