Skip to content

variableland/dx

Repository files navigation

DX

Monorepo to hold tools made for DX ⚡

Packages

Name Description Documentation
vland 🦉 CLI to init a new project in Variable Land vland (CLI reference)
run-run 🦊 CLI + plugin ecosystem for scripts in Variable Land run-run (CLI reference)
shared 🛠 Internal utilities shared across both CLIs clibuddy, loggy

The run-run ecosystem ships as opt-in pieces: the @rrlab/cli kernel + four official plugins (@rrlab/{biome,oxc,ts,tsdown}-plugin) + their shared config presets (@rrlab/{biome,ts,tsdown}-config). See run-run/CLAUDE.md for the architecture.

Usage

To get started with any package, navigate to the respective package directory and follow the installation and usage instructions in its README.

Development

Requirements

To use this monorepo, you need to have the following tools installed:

Setup

  1. Clone the repository:

    git clone git@github.com:variableland/dx.git
  2. Install dependencies:

    pnpm install
  3. Run tests:

    pnpm test

Commands

This monorepo uses Turborepo to manage tasks. Here are some useful commands:

  • pnpm build - Build all packages
  • pnpm test - Run tests for all packages

Additionally, the monorepo itself uses the CLIs run-run and vland:

  • pnpm rr - Run the run-run CLI in development mode
  • pnpm vland - Run the vland CLI in development mode

If you have mise installed, you can use the following commands directly:

  • rr - Run the run-run CLI in development mode
  • vland - Run the vland CLI in development mode

Release

This monorepo uses Changesets to manage releases. The Changesets bot is also installed in the repository.

Preview Release:

To preview changes in any package, create a pull request using the branch pattern feat/* or fix/* or add a label preview to the PR. This triggers a special GitHub workflow that publishes the package with the changes to the npm registry under the tag pr-<PR_NUMBER>. To preview your changes, install the package with the corresponding tag:

pnpm add @vlandoss/<package>@pr-123

For @rrlab/*-plugin packages, rr plugins add accepts the same @<tag> suffix and propagates it to the plugin's @rrlab/*-config sibling — falling back to latest for any sibling the preview didn't publish:

rr plugins add biome@pr-123

About

⚡ Monorepo to hold tools made for DX

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages