A free and public crowdsourcing website for tracking Flock cameras and other mass surveillance devices.
- Node.js (v18 or higher)
- npm or yarn
- Install dependencies:
npm install- Start the development server:
npm run dev- Open your browser and navigate to
http://localhost:5173
npm run buildThe built files will be in the dist directory.
- React - UI framework
- Vite - Build tool and dev server
- Tailwind CSS - Styling
- React Router - Client-side routing
- Firebase - Backend (Firestore, Authentication, Analytics)
- Leaflet - Interactive maps
src/
components/ # Reusable components
pages/ # Page components
App.jsx # Main app component with routing
main.jsx # Entry point
index.css # Global styles with Tailwind
The Firestore security rules are defined in firestore.rules. To deploy them:
- Install Firebase CLI (if not already installed):
npm install -g firebase-tools- Login to Firebase:
firebase login- Deploy Firestore rules:
firebase deploy --only firestore:rules- Read access: Public (anyone can read device data)
- Create access: Authenticated users only (including anonymous)
- Update/Delete access: Users can only modify their own submissions
- Validation: Enforces required fields and data types for device submissions
PeekBack supports data sharing with other surveillance tracking platforms:
DeFlock (https://github.com/FoggedLens/deflock) uses OpenStreetMap to store ALPR data. You can import their data into PeekBack:
- Visit
/datain the app - Set the geographic bounds for the region you want to import
- Click "Import from OSM" to fetch and import ALPR devices from OpenStreetMap
Export PeekBack data in multiple formats for sharing:
- JSON: Full device data with metadata
- CSV: Spreadsheet-compatible format
- GeoJSON: Standard geographic data format for mapping tools
Visit /data to export data.
PeekBack devices include:
type: Device type (flock, license_plate_reader, traffic_camera, etc.)latitude/longitude: Geographic coordinatesaddress: Optional address stringdescription: Optional descriptionthumbsUp: Community verification countinactiveReports: Reports of device being removed
This is a public crowdsourcing project. Contributions are welcome!