bridged
v0.0.2
Published
Detect locally and globally linked npm packages
Readme
bridged
A minimal CLI tool to detect locally and globally linked npm packages.
Installation
Package Manager
Using npm:
npm install -g bridgedUsing yarn:
yarn global add bridgedUsing pnpm:
pnpm add -g bridgedUsing bun:
bun add -g bridgedFrom Source
# Clone the repository
git clone <repository-url>
cd bridger
# Install dependencies
npm install
# Build the project
npm run build
# Run the CLI
npm startDevelopment Setup
To make the tool available globally during development:
npm linkThis allows you to run bridged from any directory.
Usage
List linked packages
bridged
# or explicitly
bridged lsLink a package
Link a local package folder for development (creates global symlink and installs locally):
bridged link <path-to-package>Examples:
bridged link ../my-package
bridged link ./packages/my-lib
bridged link /absolute/path/to/packageThis command:
- Reads
package.jsonfrom the specified directory - Runs
npm linkin that directory (creates global symlink) - Runs
npm link <package-name>in current directory (links it locally)
Unlink a package
Remove symlinks for a package (automatically detects local/global):
bridged unlink <package-name>Unlink from a specific location:
bridged unlink <package-name> local
bridged unlink <package-name> globalOutput Format
The tool outputs formatted text with colors showing both local and global linked packages, including their versions:
Local:
package-name v1.2.3 → /path/to/real/location
Global:
package-name v1.2.3 → /path/to/real/locationIf no linked packages are found, it prints:
No linked packages found.The output uses color coding:
- Cyan for section headers (Local/Global)
- Green for package names
- Yellow for versions
- Gray for paths and arrows
Requirements
- Node.js 18+
- macOS or Linux
Features
- Detects symlinked packages using
lstatSyncandreadlinkSync - Extracts and displays package versions from
package.json - Supports scoped packages (
@scope/package) - Link local packages for development (one command to link globally and install locally)
- Unlink packages from local or global locations
- Colorized output for better readability
- Minimal external dependencies (only meow for CLI, Node.js built-ins for everything else)
- TypeScript with Biome formatting
- Minimal and readable codebase
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Run
npm run biome:checkto ensure code quality - Submit a pull request
License
ISC License - see package.json for details.
