2025-12-29 17:07:11 -06:00
2025-12-29 17:07:11 -06:00
2025-12-25 04:47:24 +00:00
2025-12-24 17:00:21 -06:00
2025-12-24 17:00:21 -06:00
2025-12-24 17:00:21 -06:00
2025-12-27 20:30:40 +00:00
2025-12-24 17:00:21 -06:00

Surveilled

showcase image

Check out the live website at surveilled.quad4.io

A map of cameras in the world using OpenStreetMap overpass data.

Disclaimer

Data is fetched from OSM Overpass and may not be accurate or up to date as this data is community-sourced.

Features

  • Draw a box to get cameras for that area
  • Measure distance between two points/cameras
  • Export or copy GeoJSON of cameras in an area
  • Customize Nominatim, Overpass, and Tile endpoints
  • No reliance on external CDNs or Google fonts.
  • PWA installable
  • Mobile-friendly

Self-hosting

PNPM

pnpm config set @quad4:registry=https://git.quad4.io/api/packages/Quad4-Software/npm/
pnpm install -g @quad4/surveilled
surveilled

Or

PORT=8080 HOST=0.0.0.0 surveilled

Docker

docker run -p 3000:3000 git.quad4.io/quad4-software/surveilled:latest

Podman

podman run -p 3000:3000 git.quad4.io/quad4-software/surveilled:latest

Development

git clone https://git.quad4.io/Quad4-Software/Surveilled
cd Surveilled

PNPM

pnpm install
pnpm run dev

Makefile

make dev

Check/Lint/Format

make check
make lint
make format

Building Docker Image

Uses Chainguard Images which are rootless and very minimal images.

docker build -t surveilled .
docker run --rm -p 3000:3000 surveilled

Contributing

Send email to team@quad4.io with your feedback or any issues you may have.

LICENSE

BSD 3-Clause

Description
A map of cameras in the world using OpenStreetMap data.
https://surveilled.quad4.io/ Readme BSD-3-Clause 2 MiB
Languages
Svelte 61.7%
TypeScript 27.6%
JavaScript 3.7%
CSS 2.6%
Nix 1.8%
Other 2.6%