Skip to content

Add zx-compatible API with superior built-in commands and streaming #26

@konard

Description

@konard

Goal: Beat Google's zx by providing their convenience plus unique advantages

zx Advantages:

  • Google backing and popularity growth
  • Modern JavaScript features
  • Good documentation

Our Advantages to Leverage:

  • ✅ Built-in commands (18 vs 0) - no system dependencies
  • ✅ Virtual commands engine (revolutionary vs none)
  • ✅ Real-time streaming (vs buffered only)
  • ✅ Smaller bundle (~20KB vs ~400KB+)
  • ✅ EventEmitter pattern (vs none)
  • ✅ Async iteration (vs none)
  • ✅ Public domain license (vs Apache 2.0)
  • ✅ Better signal handling

Implementation:

  • Add $.zx compatibility mode
  • Create #!/usr/bin/env command-stream shebang support
  • Add global imports like zx ($, cd, fs, etc.)
  • Document migration from zx scripts
  • Show built-in commands advantage (no system deps)
  • Bundle size comparison (20KB vs 400KB+)
  • Streaming examples that zx can't do

Key Differentiators:

  • Cross-platform scripts (built-in commands)
  • Real-time processing (streaming)
  • Custom command extensions (virtual commands)
  • Smaller footprint
  • No system dependencies

Success Metrics:

  • Complete zx script compatibility
  • Built-in commands showcase
  • Bundle size advantages documented

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions