Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Manage monorepo workspaces with a prompt-based CLI
Workspaces provide a streamlined workflow to manage multiple packages within a single repository, but require a certain amount of knowledge, configuration and terminal-fu for everyday tasks.
Spaceman makes running complex or multistep tasks easier by wrapping them in prompts, and batching commands on confirmation:
Why read the docs when you can just answer questions?
Spaceman supports NPM, Yarn and Turborepo, with support for PNPM coming in the next release.
The following tasks are available:
Scripts:
Packages:
Workspaces:
Install the library via NPM:
npm i spaceman --save-dev
Run the library by typing its name:
spaceman
You should immediately see set of navigable tasks:
? 🚀 Task …
Scripts
❯ run
Packages
install
uninstall
update
reset
Workspaces
share
group
add
remove
To run a specific task, pass the task name as a second argument:
spaceman install
Choose a task to run it and view further options:
✔ 🚀 Task · install
? Workspace …
apps
❯ docs
web
packages
eslint-config-custom
tsconfig
ui
The choices should be self-explanatory, but check the documentation below for more detail.
Run any root or package script:
Script - type to filter scripts (use spaces for partial matching)
Confirming will run the selected script.
See Settings for configure options.
Install one or more packages to a target repository:
Workspace - pick the target workspace to install to
Packages - type a space-separated list of packages to install
Dependency type - pick one of normal, development, peer
Confirming will install the new packages.
Uninstall one or more packages from a target repository:
Workspace - pick the target workspace to uninstall from
Packages - pick one or more packages to uninstall
Confirming will remove the selected packages.
Update one or more packages in a target repository:
Workspace - pick the target workspace to update
Packages - type a space-separated list of packages to install
Confirming will update the selected packages.
Remove all Node modules-related files in all repos, and reinstall:
Confirm reset? - confirm to reset repo and workspaces
Confirming will:
lock
filesnode_modules
foldersnpm|pnpm|yarn install
Running reset
can get you out of tricky situations where workspace installs fail or your IDE reports that seemingly-installed workspaces aren't.
Make a workspace available for use within another workspace:
Source workspace - pick the source workspace to share
Target workspace(s) - pick the target workspace(s) to update
Confirming will:
npm|pnpm|yarn install
Add a new workspace group:
Group name - type a name for the new group
Confirming will:
package.json
Add a new workspace:
Workspace group - pick the target workspace group
Workspace info
- Workspace - add name, optional description and `main` file
- Dependencies - add optional dependencies
- Scripts - add optional scripts
Confirming will:
"main": "index.ts/js"
file with named exportRemove an existing workspace:
Workspace - pick the target workspace
Type to confirm - type the name of the workspace to confirm deletion
Confirming will:
workspaces
listSome of Spaceman's tasks can be configured.
To do this, add a spaceman
section to your package.json
and include the relevant sections:
{
"spaceman": {
"scripts": {
// regexp to exclude scripts from `run` list, e.g. scripts that start with ~
"exclude": "^~",
// autocomplete match algorithm; choose between "tight" (default) or "loose"
"match": "loose",
}
}
}
Some information on the script.match
types:
tight
: matches on sequential characters, use spaces to start new match groups, i.e. cli dev
loose
: matches on any character, i.e. clde
If you like the package, a tweet is always helpful; be sure to let me know via @dave_stewart.
Thanks!
FAQs
Manage monorepo workspaces with a prompt-based CLI
The npm package spaceman receives a total of 4 weekly downloads. As such, spaceman popularity was classified as not popular.
We found that spaceman demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.