Package Exports
- taskrush
- taskrush/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (taskrush) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
TaskRush
A modern task runner with parallel execution and intelligent caching.
Installation
Global Installation (Recommended)
npm install -g taskrush
Local Installation
npm install taskrush
npx taskrush --help
Quick Start
- Create a
.rush
file in your project root:
tasks:
build:
cmd: npm run build
description: Build the application
cache_files:
- "src/**/*.js"
- "package.json"
test:
cmd: npm test
description: Run tests
depends_on:
- build
- Run tasks:
taskrush build
taskrush test
taskrush --list # Show all available tasks
Features
- 🚀 Parallel Execution: Run independent tasks simultaneously
- 💾 Intelligent Caching: Skip tasks when inputs haven't changed
- 📋 Dependency Management: Automatic task ordering based on dependencies
- 🎯 Selective Execution: Run only the tasks you need
- 📝 Clear Documentation: Task descriptions and help text
- 🔍 File Watching: Automatic re-runs when files change
- 🌍 Environment Variables: Dynamic configuration support
Command Line Usage
# Run a specific task
taskrush build
# List all available tasks
taskrush --list
# Run tasks in parallel when possible
taskrush -j build
# Watch for file changes and re-run
taskrush --watch build
# Verbose output for debugging
taskrush --verbose build
# Show help
taskrush --help
Configuration
Create a .rush
file in YAML format:
tasks:
task_name:
cmd: "command to run"
description: "Task description"
depends_on:
- other_task
cache_files:
- "file_pattern"
env:
KEY: value
Programmatic Usage
const { runTaskRush } = require('taskrush');
// Run a task programmatically
runTaskRush(['build'])
.then(exitCode => {
console.log(`Task completed with exit code: ${exitCode}`);
})
.catch(err => {
console.error('Task failed:', err);
});
Examples
See the examples directory for sample configurations.
Documentation
For complete documentation, visit: https://github.com/iPeluwa/rush
License
MIT