zmNinjaNg Documentation
zmNinjaNg is a cross-platform client for ZoneMinder, the open-source video surveillance system. It is a rewrite of zmNinja using React, TypeScript, and Capacitor.
zmNinjaNg runs on Android, iOS, Windows, macOS, Linux, and the web from a single codebase.
User Guide
Everything you need to install, configure, and use zmNinjaNg day-to-day.
Developer Guide
A 15-page guide (13 numbered chapters plus a call-flow walkthrough and a go2rtc integration deep-dive) covering React fundamentals, the zmNinjaNg architecture, testing, and how to contribute. Written for experienced programmers who may be new to React.
Developer Guide
- Developer Guide
- Introduction to zmNinjaNg Development
- React Fundamentals
- State Management with Zustand
- Call Flows
- Pages and Views
- Component Architecture
- Testing Strategy
- API and Data Fetching
- Contributing to zmNinjaNg
- Key Libraries
- Application Lifecycle
- Shared Services and Reusable Components
- External Network Endpoints
- Agent development model
- Assistant Internals
- Platform Surfaces
- Go2RTC WebRTC Streaming
- State Types
- File Organization
- Development Quick Start
Building for Mobile & Desktop
Platform-specific build instructions.