1 unstable release
new 0.1.0 | Nov 27, 2024 |
---|
#78 in Build Utils
55 downloads per month
93KB
931 lines
A CLI tool built with Rust to revolutionize Node.js development workflows. By integrating powerful tools like BiomeJS, Tsup, Vitest, and Release-It, it transforms complex development processes into simple, efficient commands.
Why cargonode?
Developers face numerous challenges in modern Node.js projects:
- Repetitive configuration
- Scattered tooling
- Inconsistent development workflows
- Performance bottlenecks
cargonode solves these problems by providing a unified, lightning-fast CLI that simplifies your entire development lifecycle.
Key Features
- 🚀 High-Performance: Built with Rust for maximum speed
- 🔧 Modular Design: Seamless integration with popular tools
- 🤖 Automated Workflows: Streamline build, test, lint, and release processes
- 🛠️ Flexible Configuration: Customize every aspect of your development environment
Requirements
System Compatibility
- Node.js: >=20.11.0 (Latest LTS recommended)
- Platforms:
- macOS (x64, ARM)
- Linux (x64, ARM)
- Windows (x64)
Development Prerequisites
- Rust 1.65.0+ (for building from source)
Quick Start
1. Installation
# Homebrew
brew install cargonode
# npm
npm install -g cargonode
# Binary (manual download)
# Download from releases page and verify checksum
shasum -a 256 cargonode-*.tar.gz
2. Project Initialization
# Create new project
cargonode new my-awesome-project
# Or initialize in existing project
cd my-project
cargonode init
3. Development Workflow
# Build project
cargonode build
# Run tests
cargonode test
# Lint and format
cargonode fmt --fix
cargonode check
Configuration Mastery
Configuration Precedence
Configuration resolution follows a clear hierarchy:
- CLI Flags (Highest Priority)
- Project
cargonode.toml
- Global cargonode Settings
- Default Values
Example cargonode.toml
# Global timeout
default_timeout_secs = 180
[commands.build]
pre_checks = ["check", "format"]
env_vars = { NODE_ENV = "production" }
timeout_secs = 300
Advanced Usage
Debugging & Troubleshooting
# Enable verbose logging
cargonode <command> --verbose
Common Troubleshooting
- Verify Node.js version (>=20.11.0)
- Check configuration precedence
- Validate tool dependencies
Contributing
How to Contribute
- Fork the repository
- Create a feature branch
- Implement changes
- Write comprehensive tests
- Update documentation
- Submit a pull request
Development Setup
# Clone repository
git clone https://github.com/xosnrdev/cargonode.git
# Setup development environment
cargo build
cargo test
Roadmap & Vision
- Enhanced plugin ecosystem
- Advanced CI/CD integrations
- Performance benchmarking
- Expanded community tooling
Support
- Issues: GitHub Issues
License
cargonode is open-source, released under the MIT License. View LICENSE
Dependencies
~13–25MB
~369K SLoC