Node Port of libimobiledevice


stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
Minified + gzip package size for @synctree/libimobiledevice in KB


libmobiledevice node port for Synctree


We are planning to replace a project that connects to Apple's devices using open source library: http://www.libimobiledevice.org/.

Most functionality we need is supported in this port: https://github.com/mceSystems/libijs

However, they have not implemented pairing. The code to port pairing did not seem trivial (https://github.com/libimobiledevice/libimobiledevice/blob/master/src/lockdown.c#L885)

The plan is to this using node's Addon functionality to supplement libijs. https://nodejs.org/api/addons.html


We are not entirely sure what will get included by the installer so after we finished getting this working we might want to remove temporary files in order to reduce the size of the installer.

Installation Instructions

yarn add @synctree/libimobiledevice

Development Instructions

  1. git clone git@github.com:synctree/synctree-libimobiledevice.git
  2. yarn install
  3. sample usage
    yarn pair


    pairing ==> fbade4dea6853f01a92a1248817e2ea2ca460517
    Pairing failed error  ==> LOCKDOWN_E_PASSWORD_PROTECTED[-17]

To publish to npm

yarn publish --access public

Additional links

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.