Skip to content

Latest commit

 

History

777 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

command-stream

JavaScript package Rust crate License GitHub stars

Command-stream provides stream-oriented shell command execution APIs in two language implementations:

  • JavaScript package: Bun and Node.js package published to npm as command-stream.
  • Rust crate: Rust library and binary published to crates.io as command-stream.

Both implementations focus on shell-like command execution, real-time output handling, pipeline support, and cross-platform behavior. Language-specific API examples, package-manager instructions, release notes, and best practices live with each package.

Feature Guide

The generated feature guide runs every documented feature in JavaScript and Rust and captures its real output. JavaScript examples are also compared across Node.js and Bun. The same catalog powers the searchable feature website, which is verified and deployed by GitHub Actions.

Repository Layout

Path Purpose
js/ JavaScript package source, tests, docs, and CI/CD scripts.
rust/ Rust crate source, tests, docs, and CI/CD scripts.
docs/ Generated feature guide, website, and case studies.
.github/ GitHub workflow definitions and deployment notes.

Releases

JavaScript and Rust releases are independent:

  • JavaScript workflow: .github/workflows/js.yml
  • Rust workflow: .github/workflows/rust.yml
  • JavaScript GitHub release tags: js-v<version>
  • Rust GitHub release tags: rust-v<version>

Development

Both maintained language implementations carry pinned, executable competitor compatibility corpora with explicit missing-feature ledgers:

Run the focused suites with bun run test:competitors in js/ and cargo test --test competitor_compatibility in rust/.

The benchmark playgrounds provide measured process, package-footprint, feature-coverage, and deterministic real-world comparisons for both maintained implementations:

  • JavaScript benchmarks: Execa, cross-spawn, ShellJS, zx, and Bun Shell. Run bun run benchmark:smoke from js/.
  • Rust benchmarks: std::process, Tokio process, async-process, duct, subprocess, and xshell. Run the documented Cargo smoke command from rust/.

CI runs both suites and the language parity check prevents benchmark changes in only one implementation unless maintainers explicitly apply parity-exempt.

Run all language-specific checks from the language folders:

cd js
bun install
bun run test
bun run check
cd rust
cargo fmt --all -- --check
cargo clippy --all-targets --all-features
cargo test --all-features

License

Command-stream is released under the Unlicense.

About

$treamable commands executor

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages