{"library":"samhail","title":"Samhail: Local Package Development","description":"Samhail is a developer tool designed to streamline local npm package development by resolving linked packages directly at the bundler level. It provides an alternative to traditional methods like `npm link`, avoiding issues related to symlinks, `node_modules` mutation, or lockfile changes. The system operates in two parts: a CLI for managing configuration (`.samhail.json`) and session state (`.samhail.lock`), and bundler-specific plugins (for Vite, Webpack, Rspack, esbuild, Rollup) that rewrite module resolution when a session is active. This ensures that a consumer application directly uses the local source of a dependency without interfering with the global `node_modules` structure. Currently at version 0.2.0, it is in an early development stage, implying rapid iteration and potential for breaking changes, though no specific release cadence is published beyond active development. Its core differentiator is the bundler-level resolution and the avoidance of common `npm link` pitfalls.","language":"javascript","status":"active","last_verified":"Sun Apr 19","install":{"commands":["npm install samhail"],"cli":{"name":"samhail","version":null}},"imports":["import samhail from 'samhail/vite';","import samhail from 'samhail/webpack';","import samhail from 'samhail/esbuild';"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import { defineConfig } from 'vite';\nimport samhail from 'samhail/vite';\n\n// vite.config.ts\nexport default defineConfig({\n  plugins: [samhail()],\n});\n\n// In your terminal:\n// npm install samhail --save-dev\n// npx samhail link\n// (Follow prompts to link a local package, e.g., './my-local-package')\n// npx samhail start\n// (Run your Vite dev server in another terminal: npm run dev)","lang":"typescript","description":"Demonstrates how to integrate Samhail into a Vite project, link a local package, and activate a development session for bundler-level resolution.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}