Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
This branch is 38 commits behind ZoneMinder:master.


Failed to load latest commit information.
Latest commit message
Commit time

Donate with PayPal Donate with Bitcoin Donate with Ethereum Donate with Bountysource

Project Discontinuation Notice, EOY 2021

After 6+ years of developing zmNinja + ES + ML I've run out of time to maintain this project. Please read this notice. This project has been transferred to ZoneMinder and ZM devs along with the community will continue to maintain it beyond 2021.

zmNinja website

zmNinja is a multi platform (iOS, Android, Windows Desktop, Mac Desktop, Linux Desktop) client for ZoneMinder users. ZoneMinder is an incredible open source camera monitoring system and is used by many for home and commercial security monitoring.

Get in on App Store Get it on Google Play


Before you ask for help

  • Make sure you have read the FAQ
  • Make sure you have validated that your APIs are working (if not, its a ZM issue, please post in ZM forums)
  • Please don't ask me for help with source compilation if you are not familiar with coding mobile apps - you should try and solve your own problems

Video Demo

Check out a video demo of zmNinja here

Mobile Platforms

zmNinja is stable as of today and runs on a variety of Android and iOS platforms. See links above to get them on play store (Android) and app store (iOS)

It also runs on the desktop (see below)

Desktop Platforms

Please download binaries from here.

Key Features

  • Push Notifications Object detection/face recognition for alarms (Needs the eventserver to be set up)
  • Multiple languages (English, French, German, Spanish, Portugese, Dutch, and more)
  • H264 video support
  • live views of monitors
  • Montage view (with multiple montage profile settings/sizes)
  • Events history and list
  • Timeline view
  • Camera pan/tilt/zoom (needs to have ZM support it first)
  • 24hr review

Key Limitations

  • Client certificates are not supported
  • If you use self signed certificates, you will likely have to install them in your phone (especially Android)
  • If you use Basic Authentication, you'll have to go through additional setup (see FAQ)


To the Zonemider community in general, and the awesome Stack Overflow community. But specifically, Andrew Bauer (knight-of-ni) who egged me on to take up this project and Isaac Connor who has been incredibly supportive in helping fix various ZM issues that affected zmNinja.

Important Notes

  • zmNinja needs APIs enabled in ZoneMinder. See this for instructions on how to make sure your APIs are working. If they are not working, zmNinja will not work.

Why did I develop zmNinja?

  • I wanted to learn how to write a mobile app. It was (and is) fun.
  • I originally reached out to tinyCam to see if they were willing to do an app - did not get a response
  • I found zmView limited for my needs



High performance, cross platform ionic app for Home/Commerical Security Surveillance using ZoneMinder



Code of conduct





No packages published


  • JavaScript 78.9%
  • CSS 12.7%
  • SCSS 5.3%
  • HTML 2.4%
  • Python 0.3%
  • Shell 0.3%
  • Objective-C 0.1%