Skip to content

Latest commit

 

History

History
102 lines (69 loc) · 1.77 KB

README.md

File metadata and controls

102 lines (69 loc) · 1.77 KB

Unified tooling for Node.js, integrating BiomeJS, Tsup, Vitest, and Release-It.

Features

  • Rust-powered performance
  • Tool-agnostic architecture
  • Command customization
  • Project templates
  • Inherited CLI arguments
  • Cross-platform support

Requirements

System

  • Node.js >= 20.11.0
  • Rust >= 1.80

Platforms

  • macOS (x64, ARM)
  • Linux (x64, ARM)
  • Windows (x64, ARM)

Installation

macOS:

brew install xosnrdev/cargonode/cargonode

nixOS:

see nixpkgs

nix-env -iA nixpkgs.cargonode

Rust:

cargo install cargonode

Additional package managers planned.

Usage

# Project
cargonode new my-project
cargonode init

# Operations
cargonode build  # default: tsup
cargonode test   # default: vitest
cargonode fmt    # default: biome
cargonode check  # default: biome
cargonode release # default: release-it

# Help
cargonode --help
cargonode build --help  # displays tsup help
cargonode test run     # runs vitest run
cargonode check --fix  # runs biome check --fix

Configuration

Customize tools via cargonode.toml:

[commands.format]
command = "eslint"  # replace biome
args = ["--fix"]

[commands.release]
prechecks = ["test", "build"]

Template Reference

Precedence

  1. CLI Arguments
  2. Project Configuration
  3. Defaults

Support

GitHub Issues

License

MIT OR Apache-2.0