npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

node-jxa-workspace-automation

v1.3.1

Published

Packaging node + jxa scripts to use for automating macos based workspaces

Downloads

5

Readme

Workspace Automation Scripts

Automating workspaces with node.js + applescript (jxa)

Tech

  1. JXA
  2. Node.js

Use these apps to help you trigger your script

  1. LaunchControl
  2. Mac Script Editor
  3. Shortcuts

Step 1. Open your code editor at a new project. We will create a node.js script

  npm i -y

In your package.json file include "type": "module" to use import syntax

  touch index.js
 npm i node-jxa-workspace-automation

Now in index.js copy and paste this example

import { openChromiumBrowser } from 'node-jxa-workspace-automation'

openChromiumBrowser({
  tabs: ['https://hubspot.com', 'https://semrush.com'],
  browser: 'Google Chrome',
})

Run your automation

You might see permissions to run, select allow then run it again. Running it twice should only occur one time.

 node index.js

If you want to run terminal processes with Iterm

import { openItermContext } from 'node-jxa-workspace-automation'

const contexts: ItermWindowSplit = {
  useSplitPanes: true,
  workspaces: [
    {
      filePath: '<your filepath>',
      command: 'npm run start:dev',
      usesDocker: true,
      opensVSCode: true, // works if you have VS Code `code .` enabled
    },
    {
      filePath: '<your filepath>',
      command: 'npm run start',
    },
  ],
}

//RUN
const spawnWorkspace = async () => {
  return await openItermContext(contexts)
}
spawnWorkspace()

Features

  1. Open / Close Apps
  2. Opens apps associated to workspace
  3. Open project in code editor
  4. Populate common workspace browser tabs to browser
  5. Quit all apps except for passed list of apps

How you can make calling this easy

  1. Make it a shortcut
  2. Search then Select Run Shell Script
/Users/<User>/.nvm/versions/node/v18.16.0/bin/node <paste filepath to this script>

Notes: Depending if you've installed node directly or with nvm you need to point to it.

applescript docs

License

This project is available under the Fair Source License and can be used for free for individual use.

For Individual Users

  • Individual users are permitted to use the software for free.
  • Review the LICENSE file for detailed information on the permissions and limitations.

For Commercial Use

  • Businesses and other commercial entities are required to purchase a commercial license for use.
  • The use of this software without a commercial license in a commercial setting is not permitted under the Fair Source License.

Please review the LICENSE file in this repository for full details on permissions and restrictions.