README.md
# ExMobileDevice
An OTP application to talk to iPhones via `usbmuxd` on OSX and Linux.
Current functionality is minimal but includes:
- Device enumeration and notification of attach/detach (`ExMobileDevice.Muxd`)
- Retrieval of device configuration (`ExMobileDevice.Lockdown`)
- Device reboot and shutdown (`ExMobileDevice.Diagnostics`)
- Syslog streaming (`ExMobileDevice.Syslog`)
- WebInspector support - automate browsing sessions without SafariDriver -
(`ExMobileDevice.WebInspector`)
- Crash log copying and removal - (`ExMobileDevice.CrashReporter`)
- Developer Disk mounting - (`ExMobileDevice.ImageMounter`)
Planned for future releases:
- Application management (install, run)
- Device pairing
Contributions are welcome.
## Installation
If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `exmobiledevice` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:exmobiledevice, "~> 0.2.21"}
]
end
```
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
be found at <https://hexdocs.pm/exmobiledevice>.
## Acknowledgements
- Most of the heavy lifting has been done by [pymobiledevice3](https://github.com/doronz88/pymobiledevice3). Give it a star.