dsq-cli

Crates.iodsq-cli
lib.rsdsq-cli
version0.1.0
created_at2025-12-15 18:41:14.209898+00
updated_at2025-12-15 18:41:14.209898+00
descriptionCLI for dsq - data processing with jq syntax
homepagehttps://datasetq.com
repositoryhttps://github.com/durableprogramming/dsq
max_upload_size
id1986521
size381,080
David J Berube (djberube)

documentation

https://docs.rs/dsq-cli

README

dsq-cli

Build status Crates.io Documentation Rust 1.69+

Command-line interface for dsq - data processing with jq syntax.

The dsq-cli crate provides the command-line interface for dsq, a data processing tool that extends jq-compatible syntax to work with structured data formats like Parquet, Avro, CSV, and more.

Installation

Add this to your Cargo.toml:

[dependencies]
dsq-cli = "0.1"

Or for the latest development version:

[dependencies]
dsq-cli = { git = "https://github.com/durableprogramming/dsq", branch = "main" }

Requirements

  • Rust 1.69 or later
  • For full functionality: dsq-core with appropriate features

API Reference

Full API documentation is available at docs.rs/dsq-cli.

Usage

The dsq-cli crate provides the main dsq binary. See the main project README for detailed usage examples.

Key Components

CLI Parsing

Command-line argument parsing and configuration:

use dsq_cli::cli::{parse_args, CliConfig};

// Parse command line arguments
let config = parse_args()?;

Execution Engine

Data processing execution with various modes:

use dsq_cli::executor::Executor;

// Execute data processing
let executor = Executor::new(config);
let result = executor.execute().await?;

Interactive REPL

Interactive shell for data exploration:

use dsq_cli::repl::Repl;

// Start REPL mode
let repl = Repl::new();
repl.run().await?;

Dependencies

  • dsq-core - Core data processing functionality
  • clap - Command-line argument parsing
  • tokio - Async runtime
  • anyhow - Error handling

Contributing

Contributions are welcome! Please see the main CONTRIBUTING.md file for guidelines.

License

Licensed under either of:

at your option.

Commit count: 0

cargo fmt