Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

applescript-promise

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

applescript-promise

Easily execute arbitrary AppleScript code on OS X through NodeJS with Promises.

  • 0.0.5
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

node-applescript-promise

A high-level way to execute AppleScript code through NodeJS and retrieve the result as a native JavaScript object. Underneath the hood, this module is just a simple wrapper around the OS X osascript command.

Why?

AppleScripts are the only way to communicate and interact with certain external OS X processes, for example iTunes.

Easy Install

yarn add applescript-promise

Requirements

  • Mac (or Hackintosh) running OS X (tested with Sierra)
  • NodeJS (v4.4.7 or newer)

Usage

The node-applescript-promise module provides execString and execFile functions to easily execute AppleScript commands and buffer the output into a calback.

import applescript from 'applescript';

// Very basic AppleScript command. Returns the song name of each
// currently selected track in iTunes as an 'Array' of 'String's.

const script = 'tell application "iTunes" to get name of selection';

applescript.execString(script)
  .then((tracks) => {
    tracks.forEach(songName => console.log(songName);
  })
  .catch((error) => {
    // Something went wrong
    console.log('error:', error);
  });

execFile works the exact same way, except you pass the path of the AppleScript (*.applescript) file as the first argument instead of the command itself, and you may pass an optional Array of strings as a second argument to send to the applescript file.

License

The node-applescript-promise module is licensed under the MIT license.

This module is a merely wrapper over node-applescript.

Keywords

FAQs

Package last updated on 30 Aug 2017

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc