Pkglinks
📦 shared-lib (local) -> /absolute/path/to/my-shared-lib Status: linked, hash: a1b2c3... Import/require as usual. The package manager resolves shared-lib to its linked location. Step 5: Unlink or Promote Once you publish shared-lib v1.0 to a registry:
pkglink add https://github.com/yourname/lodash-fixed.git#fix-bug --name lodash Pkglinks remembers the commit hash, so your lockfile stays deterministic. On a plane with no internet? Pkglinks allow you to pre-fetch and link local caches. Your pkglinks.lock file ensures all dependencies resolve to local paths or a local registry mirror. How to Implement Pkglinks in Your Project (Step-by-Step) Let's assume you are using a generic CLI tool pkg (hypothetical, but representative of emerging tools like pnpm 's workspace protocol or yarn 's portal: ). Step 1: Initialize Pkglinks pkglinks init Creates .pkglinks/ directory and a pkglinks.json manifest. Step 2: Add a Local Package pkglinks add ./my-shared-lib --name shared-lib --version local Step 3: Verify the Link pkglinks list Output: Pkglinks
cd apps/web pkglink add ../packages/ui --as @myorg/ui Now @myorg/ui is linked directly. Change a button component in packages/ui and apps/web hot-reloads instantly. You forked a critical library ( lodash-fixed ) on GitHub. Instead of waiting for a PR merge: Step 5: Unlink or Promote Once you publish shared-lib v1
The tools are emerging, the standard is solidifying, and the benefits are undeniable. Don't get left behind in dependency hell – embrace the clarity of . Ready to dive deeper? Check out the official Pkglinks specification or try the pkglinks CLI on your next side project. Your future self (and your disk space) will thank you. Your pkglinks
pkglinks unlink shared-lib pkglinks add shared-lib@^1.0 --from-registry npm | Feature | npm/yarn symlink | Git submodule | Monorepo | Pkglinks | |--------|----------------|---------------|----------|----------------| | Cross-project dev | ✅ (via npm link ) | ❌ | ✅ | ✅ | | Version awareness | ❌ | ✅ | ❌ | ✅ | | Lockfile support | ❌ | ❌ | ✅ | ✅ | | Works across languages | ❌ | ❌ | ❌ | ✅ | | Automatic cleanup | ❌ | ✅ | ✅ | ✅ | | Registry fallback | ✅ | ❌ | ✅ | ✅ |






















