Skip to main content

Introduction

yalcspace generates dynamic VSCode workspaces from yalc links, streamlining multi-package local development.

What is yalcspace?​

When working with multiple local packages linked via yalc, managing builds, dependencies, and workspace configurations becomes tedious and error-prone. yalcspace solves this by:

  • Constructing dependency graphs from your yalc links
  • Generating VSCode workspaces that include all linked packages
  • Providing build commands that respect dependency ordering
  • Eliminating duplicate packages in your bundles

Quick Start​

In your top-level project directory:

npx yalcspace

This creates a VSCode workspace including your project and all currently yalc'd packages, then opens it.

Problems Solved​

Duplicate packages in your bundle​

yarn can install multiple versions of a package when using yalc, because file://path/to/package@0.0.0 isn't compatible with package@1.2.3. This leads to broken React Context and other subtle bugs.

Invalid file locations​

When yalc'd packages reference other yalc'd packages, the .yalc directory paths can become invalid relative to the consuming project's node_modules.

Development tedium​

Without yalcspace, building a chain of interdependent local packages requires manually opening each workspace, building, and pushing — in the correct order.