camera.ui is a self-hosted, local-first video surveillance platform for security cameras, built for people who want live viewing, 24/7 recording, and on-device AI detection while keeping footage on hardware they own.
What it is
camera.ui is a TypeScript platform for running security cameras on your own infrastructure. It ships as the npm package @camera.ui/server and as the container image ghcr.io/cameraui/camera.ui, and it is released under the MIT licence, copyright (c) 2020-present seydx. The README describes it as a modern, local-first platform for professional video surveillance, and its core is free and open source. Around that core sits an extensible plugin ecosystem that the project presents as the route to further functionality, and the documentation covers installation on a desktop app, Docker, Proxmox, bare-metal Linux, and mobile apps. The project lives in the JavaScript and TypeScript ecosystem, and its topic list places it alongside home automation, HomeKit, NVR, and detection tooling.
The problem it addresses is ownership of surveillance data. A conventional camera setup usually routes live video, recording, detection, and notifications through a vendor cloud account. camera.ui moves that work onto hardware the operator controls, with no mandatory cloud, so footage stays on site. It covers live viewing, 24/7 recording, on-device AI detection, semantic search, smart-home integration, and push notifications in one system rather than as separate services. The README marks several of those capabilities with an asterisk indicating they require a camera.ui subscription, which the project says funds ongoing development; the free and open-source portion is the core.
Key capabilities
- Live viewing and 24/7 recording of security cameras, with recording marked in the README as a subscription feature.
- On-device AI detection, reflected in the topic list by
ai, object-detection, face-recognition, and detection.
- Semantic search across recorded footage, marked as subscription-backed in the README.
- Smart-home integration, including
homekit and home-automation in the topic list.
- Push notifications for camera events, also marked as requiring a subscription.
- An extensible plugin ecosystem for adding functionality beyond the built-in feature set.
- Deployment targets documented as a desktop app, the
ghcr.io/cameraui/camera.ui Docker image, Proxmox, bare-metal Linux, and mobile apps.
Who uses it and how
- Self-hosters running the
@camera.ui/server npm package or the ghcr.io/cameraui/camera.ui image on a machine they administer, with no mandatory cloud in the path.
- Homelab and virtualization users, since Proxmox and bare-metal Linux are both documented installation routes.
- Home-automation households that want camera feeds and events inside a HomeKit or broader smart-home setup.
- Operators with privacy or data-ownership constraints, for whom the local-first design and the MIT licence on the core resolve procurement and residency questions.
- A community of roughly 1,110 GitHub stars and 167 forks, supported through GitHub Discussions, a Discord server, and the r/cameraui subreddit; the repository issue list is reserved exclusively for bug reports and feature requests.
Getting started
Start with the documentation at docs.cameraui.com, which covers installation (desktop app, Docker, Proxmox, bare-metal Linux, mobile apps) and a guided first run. The two package-level routes are the npm package @camera.ui/server and the Docker image ghcr.io/cameraui/camera.ui.
How it compares
The facts provided do not name a list of paid products that camera.ui replaces, and they do not name comparable self-hosted projects either, so no head-to-head comparison is possible on the record available. Within this registry it stands alone as a local-first surveillance platform, and any contrast with commercial camera cloud services would have to rest on the axes it does document: MIT-licensed core, self-hosting on owned hardware, footage retained locally, and a subscription only for the features marked with an asterisk.
When to use it — and when not to
Choose camera.ui if you are willing to operate the server and the storage that 24/7 recording consumes, and if you accept that semantic search, push notifications, and continuous recording depend on a paid subscription layered over the open-source core. Do not pick it if you want a fully managed cloud service with no hardware to run, or if you need a mature reference deployment today, because the live demo at demo.cameraui.com is still listed as coming soon. The README itself is thin and defers almost everything to the external documentation, so plan to read docs.cameraui.com before committing.
project readme (upstream, from github) — read inline
camera.ui

A self-hosted platform for your security cameras — live viewing, 24/7 recording*, on-device AI detection, semantic search*, smart-home integration, and push notifications*, all built on an extensible plugin ecosystem for endless possibilities. Runs on hardware you own — no mandatory cloud, your footage stays with you.
Getting Started
Please follow the documentation at docs.cameraui.com — it covers installation (desktop app, Docker, Proxmox, bare-metal Linux, mobile apps), a guided first run, and everything beyond. A live demo is in the works — coming soon.
Questions
For questions and support please use GitHub Discussions, Discord, or Reddit. The issue list of this repo is exclusively for bug reports and feature requests.
Issues
Please follow the issue templates when opening an issue, and report security vulnerabilities privately as described in the Security Policy.
Contribution
Please make sure to read the Contributing Guide before making a pull request.
License
MIT — Copyright (c) 2020-present seydx
The core of camera.ui is free and open source. Features marked with * require a camera.ui subscription that funds ongoing development.