VV

visulima/vis

Developer tools
1 stars 0 forks Quality 64 Trend 25MIT

Rust-backed Visulima tooling: vis task runner, MCP server, secret scanner, and terminal UI

Overview

Rust-backed tooling for the Visulima ecosystem: a task runner, an MCP server, a secret scanner, and a terminal UI. ![typescript-image][typescript-url] ![mit licence][license] ![Chat][chat] ![PRs Welcome][prs-welcome] This repository holds the packages that compile Rust code into Node.js native addons through NAPI-RS. They were split out of visulima/visulima so their Rust builds and tests no longer slow down the rest of the monorepo. Every package is still standalone. Install the one you need, and every other @visulima/* dependency comes from npm. The native binding for your platform is installed automatically through optionalDependencies. Each package's README covers its own API. Requirements: Node.js ^22.14.0 || >=24.10.0, pnpm 11.28.2, and a stable Rust toolchain (rust-toolchain.toml pins the channel). - Build a package's native binding with its build:native script. Use build:native:debug for faster local iteration.

README

Visulima Vis

Rust-backed tooling for the Visulima ecosystem: a task runner, an MCP server, a secret scanner, and a terminal UI.


What is this?

This repository holds the packages that compile Rust code into Node.js native addons through NAPI-RS. They were split out of visulima/visulima so their Rust builds and tests no longer slow down the rest of the monorepo.

Every package is still standalone. Install the one you need, and every other @visulima/* dependency comes from npm.

Packages

Package Description npm
@visulima/vis Monorepo dev toolkit: task runner, remote caching, security scanning, git hooks, and AI agent hooks.
@visulima/vis-mcp Model Context Protocol server that exposes vis tooling to AI agents over stdio.
@visulima/task-runner Task runner with caching for monorepo workspaces.
@visulima/task-runner-client Zero-dependency client for giving task-runner cache-correctness hints from inside a task.
@visulima/secret-scanner Fast secret and credential scanner, a Rust port of gitleaks detection.
@visulima/tui React terminal UI library with a native Rust diff engine and an Ink-compatible API.

Quick start

npm install @visulima/vis
npx vis --help

The native binding for your platform is installed automatically through optionalDependencies. Each package’s README covers its own API.

Development

Requirements: Node.js ^22.14.0 || >=24.10.0, pnpm 11.28.2, and a stable Rust toolchain (rust-toolchain.toml pins the channel).

pnpm install
pnpm -r run build:native                                       # Rust bindings (release)
pnpm -r run build
FORCE_COLOR=3 pnpm -r run test
  • Build a package’s native binding with its build:native script. Use build:native:debug for faster local iteration.
  • The terminal suites assert on ANSI output, so set FORCE_COLOR when running outside a TTY.
  • The secret-scanner binding test needs a release build, because the debug binary is too slow for its timeout.

CI runs build-native.yml on pushes and pull requests to main. It compiles the bindings for every target, and the ci.yml test job downloads the host binding for the same commit.

Contributing

Read the contributing guide first. Commits follow Angular-style conventional commits, scoped to the package name, for example fix(secret-scanner): ....


View this README on GitHub

Install

npx vis --help