Atom-Shell Package Manager
Last updated 6 years ago by bwin .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install aspm 
SYNC missed versions from official npm registry.

aspm - Atom-Shell package manager

build status dependencies npm version

A node CLI script like npm but for Atom-Shell. Install and build npm-modules for Atom-Shell.

aspm is designed as a replacement for npm if you're working on an Atom-Shell project.

Warning: May be unreliable at the moment.

Table of Contents


Since you're using Atom-Shell you most likely have those installed already.

  • node & npm(global)
  • node-gyp(global), also fulfill it's requirements.


Install (preferred globally) with npm install aspm -g.


  • Install globally with npm. npm install -g aspm
  • Add some configuration to your package.json. (See Configuration. This is optional but highly recommended.)
  • Now use aspm in place of npm in your project.


  Usage: aspm [options] [command]


    install|i [module]  install module (fetch & build)
    fetch|f [module]    fetch module
    build|b <module>    build module


    -h, --help                        output usage information
    -V, --version                     output the version number
    -t, --target <version>            Atom-Shell version
    -a, --arch <arch>                 target architecture
    -p, --target-platform <platform>  target platform
    -s, --save                        save as dependency to package.json
    -s, --save-dev                    save as devDependency to package.json
    -g                                install globally with normal npm
    --tarball [url/path]              install from [remote] tarball
    --quiet                           don't say anything

Configuration (optional)

You can (and should to make things more convenient) configure default values for target, arch and platform in your package.json.

  "config": {
    "atom-shell": {
      "version": "0.19.5",
      "arch": "ia32",
      "platform": "win32"

This way you can use it just like npm without additional parameters (for basic tasks as shown in usage).

Overriding configuration

You can always set/override some or all configuration values. For example: aspm install --target 0.19.5 --arch ia32.

Without configuration

Important: If you don't specify default values, you'll always have to provide at least a target and arch.


Please note that sqlite3 as an example does not work at the moment because of node-pre-gyp.

# Install all modules from package.json
aspm install

# Install specific module and save as dependency in package.json
aspm install sqlite3 --save

# Install specific module in a specific version and save as dependency in package.json
aspm install sqlite3@3.0.4 --save

# Install multiple module and save as dependency in package.json
aspm install sqlite3 async --save

# Install module from tarball
# In contrast to npm you have to specify the module name here too.
aspm install sqlite3 --tarball --target 0.19.5 --arch ia32

# Build a specific module for a specific target
aspm build sqlite3 --target 0.19.5 --arch ia32

# fetch all modules from package.json, then build all in a separate step
aspm fetch
aspm build

How it works

Under the hood

To fetch the modules we just call out to npm with --ignore-scripts. To build and node-gyp with some additional arguments.

Support for modules that use node-pre-gyp

We have basic support for compiling modules that use node-pre-gyp (i.e. sqlite3) by faking some stuff.


There may or may not be several (maybe better?) alternatives to this.

I haven't looked into these, yet.

Current Tags

  • 0.1.3                                ...           latest (6 years ago)

9 Versions

  • 0.1.3                                ...           6 years ago
  • 0.1.2                                ...           6 years ago
  • 0.1.1                                ...           6 years ago
  • 0.1.0                                ...           6 years ago
  • 0.0.5                                ...           6 years ago
  • 0.0.4                                ...           6 years ago
  • 0.0.3                                ...           6 years ago
  • 0.0.2                                ...           6 years ago
  • 0.0.1                                ...           6 years ago
Maintainers (1)
Today 0
This Week 0
This Month 1
Last Day 0
Last Week 1
Last Month 0
Dependencies (4)
Dev Dependencies (3)
Dependents (2)

Copyright 2014 - 2016 © |