Add homebrew distribution

Open
#1,497 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
typescript
Domain
cli, release

Research direction

No file, test, or entry point is named. Start by reviewing the existing npm packaging and release configuration, then determine where a Homebrew distribution would be integrated. Done means the CLI can be installed through Homebrew system-wide and remains available when projects use different Node versions; verify the installation and invocation path.

Written by the indexing model from the issue text.

Description

On MacOS Homebrew https://brew.sh is the defacto package manager to install Apps or CLIs.

Using npm for distributing the cli has some downsides

One I ran into today was that:

I use fnm to manage Node versions, which keeps multiple versions of Node and NPM and depending on the project needs it switches to the correct version using symlinks.

Since the cli is installed globally and the npm stores that in a folder scoped to a specific Node version, when I try to use the cli in a different repo which uses a different version of Node (and hence npm) the socket cli is not found.

With Homebrew distribution, the whole system gets the same socket cli version, unlike Node, Homebrew is installed system-wide and doesn't change per-project.

Dominant language
TypeScript
Stars
317
Forks
65
Avg merge
1h 26m
Merged PRs (30d)
30

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SocketDev/socket-cli

All issues in SocketDev/socket-cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.