Introduction

A CLI task runner for monorepo workspaces with task caching, dependency-aware scheduling, catalog management, and git hooks

Visulima Vis

A CLI task runner for monorepo workspaces, powered by @visulima/task-runner and @visulima/cerebro.

Key Features

Task Execution

  • Workspace-aware - Automatically discovers projects from pnpm-workspace.yaml or package.json workspaces
  • Task caching - Local and remote caching powered by @visulima/task-runner
  • Dependency-aware scheduling - Runs tasks in topological order with configurable parallelism
  • Affected detection - Only runs tasks for projects changed since a given git ref

Dependency Management

  • Catalog check - Detect outdated dependencies in pnpm/bun workspace catalogs
  • Catalog update - Update catalog entries with automatic backup and rollback
  • Security scanning - Check for known vulnerabilities via OSV.dev
  • Package manager wrapper - Unified update interface for pnpm, npm, yarn, and bun

Developer Experience

  • Graph visualization - View your project dependency graph in ASCII, DOT, JSON, or HTML
  • Git hooks - Install, manage, and migrate git hooks (husky migration supported)
  • Configurable - vis.json for target defaults, cache settings, and update preferences
  • Built on Cerebro - Robust CLI with built-in help, version, and shell completion

Quick Start

# Run a target across all workspace projects
vis run build

# Run tests only on affected projects
vis affected test --base=main

# Check for outdated catalog dependencies
vis check

# Update catalog dependencies interactively
vis update --interactive

# Visualize the project dependency graph
vis graph

Next Steps

Support

Contribute to our work and keep us going

Community is the heart of open source. The success of our packages wouldn't be possible without the incredible contributions of users, testers, and developers who collaborate with us every day.Want to get involved? Here are some tips on how you can make a meaningful impact on our open source projects.

Ready to help us out?

Be sure to check out the package's contribution guidelines first. They'll walk you through the process on how to properly submit an issue or pull request to our repositories.

Submit a pull request

Found something to improve? Fork the repo, make your changes, and open a PR. We review every contribution and provide feedback to help you get merged.

Good first issues

Simple issues suited for people new to open source development, and often a good place to start working on a package.
View good first issues