vx-tool-yarn

Crates.iovx-tool-yarn
lib.rsvx-tool-yarn
version0.4.0
created_at2025-06-19 10:55:24.576854+00
updated_at2025-06-19 13:58:44.509953+00
descriptionYarn package manager support for vx
homepagehttps://github.com/loonghao/vx
repositoryhttps://github.com/loonghao/vx
max_upload_size
id1718190
size30,823
Hal (loonghao)

documentation

README

vx-pm-yarn

Crates.io Documentation License: MIT

Yarn package manager support for the vx universal tool manager.

Status

🚧 Under Development - This crate is currently under development and not yet implemented.

Overview

vx-pm-yarn will provide Yarn package manager support for vx, enabling fast and reliable package management for JavaScript/Node.js projects through the vx interface.

Planned Features

  • Yarn Package Manager: Full Yarn package management capabilities
  • Workspace Support: Yarn workspaces and monorepo support
  • PnP (Plug'n'Play): Zero-installs and Plug'n'Play support
  • Berry Support: Yarn 2+ (Berry) modern features
  • Script Execution: Run package.json scripts through vx
  • Cache Management: Efficient package caching and management
  • Lock File: yarn.lock file management and integrity

Planned Commands

Package Management

# Install packages (planned)
vx yarn install
vx yarn add express
vx yarn add --dev jest
vx yarn remove express

# Update packages (planned)
vx yarn upgrade
vx yarn upgrade express
vx yarn outdated

Project Management

# Initialize projects (planned)
vx yarn init
vx yarn init -y

# Run scripts (planned)
vx yarn run dev
vx yarn run build
vx yarn run test
vx yarn start

# Information (planned)
vx yarn list
vx yarn info express

Workspace Management

# Workspace commands (planned)
vx yarn workspaces list
vx yarn workspace <workspace-name> add express
vx yarn workspace <workspace-name> run build

Current Status

This crate is currently in the planning phase. JavaScript/Node.js package management is currently provided through the vx-pm-npm crate.

For immediate JavaScript development needs, please use:

Development Roadmap

  1. Phase 1: Basic Yarn Classic (v1) support
  2. Phase 2: Yarn Berry (v2+) support
  3. Phase 3: Workspace and monorepo features
  4. Phase 4: Advanced features (PnP, Zero-installs)

Yarn vs NPM

Yarn Advantages (Planned)

  • Faster: Parallel package installation
  • Deterministic: Lockfile ensures consistent installs
  • Workspaces: Built-in monorepo support
  • Offline: Offline package installation
  • Security: Enhanced security features

Feature Comparison

Feature NPM (Available) Yarn (Planned)
Package Installation 🚧
Script Running 🚧
Workspaces 🚧
Lock Files 🚧
Offline Mode 🚧
PnP Support 🚧

Contributing

This crate is not yet implemented. If you're interested in contributing to Yarn support in vx, please:

  1. Check the main project issues
  2. Join the discussion about Yarn package manager support
  3. See the contributing guidelines

Alternative Solutions

While this crate is under development, consider these alternatives:

NPM (Available Now)

# Use NPM for JavaScript package management
vx npm install express
vx npm run dev
vx npm test

System Yarn

# Use system Yarn with vx
vx --use-system-path yarn --version
vx --use-system-path yarn install

Configuration (Planned)

Project Configuration (.vx.toml)

# Planned configuration
[package_managers]
yarn = "latest"

[yarn]
version = "berry"         # or "classic"
enable_pnp = true
workspace_support = true

Yarn Configuration (.yarnrc.yml)

# Planned Yarn configuration integration
nodeLinker: pnp
enableGlobalCache: true
compressionLevel: mixed

License

This project is licensed under the MIT License - see the LICENSE file for details.

Related Crates

Commit count: 240

cargo fmt