🚨 SpySnare – Advanced Spy Camera & Hidden Device Detector
SpySnare is a multi-layer security application built with Flutter, designed to help users detect hidden spy cameras and suspicious electronic devices using Wi-Fi scanning, optical lens detection, and magnetometer-based electronic field analysis.
- Scans local subnet to find connected devices.
- Checks for common spy-camera ports like 80, 8080, 554.
- Attempts to fetch device titles from HTTP responses.
- Logs all detected hosts to the unified report.
- Uses device camera to detect reflective hotspots (potential hidden lenses).
- Real-time hotspot overlay on camera preview.
- Works best in dim or dark environments.
- Monitors magnetic field intensity.
- Calibrate baseline & visualize real-time spikes.
- Detects hidden electronics, small transmitters, or powered devices.
- Logs all findings from Wi-Fi, Optical, and Magnetometer scans.
- Export results as JSON for documentation.
- Completely offline — no data leaves the device.
lib/
├── main.dart
├── core/
│ ├── models/
│ │ ├── finding.dart
│ │ └── report_model.dart
│ └── services/
│ ├── wifi_service.dart
│ ├── optical_service.dart
│ └── magnetometer_service.dart
├── pages/
│ ├── wifi/
│ │ └── wifi_scan_page.dart
│ ├── optical/
│ │ ├── optical_detection_page.dart
│ │ ├── hotspot_painter.dart
│ │ └── optical_service.dart
│ ├── magnetometer/
│ │ ├── magnetometer_page.dart
│ │ └── sparkline_painter.dart
│ └── report/
│ ├── report_page.dart
│ └── report_exporter.dart
└── utils/
└── helpers.dart
git clone https://github.com/yourusername/SpySnare.git
cd SpySnareflutter pub getflutter runThe app uses:
- Camera Access – Optical lens detection
- Location Access – Wi-Fi scanning (required by Android)
- Storage Access – Exporting reports
All data is processed locally on-device.
- Flutter (Dart)
- camera package
- network_info_plus
- sensors_plus
- permission_handler
- image for pixel analysis
{
"generated_at": "2025-01-02T12:00:00Z",
"findings": [
{
"type": "wifi",
"message": "Device at 192.168.1.10 with open ports [80, 554]",
"data": { "ip": "192.168.1.10", "open_ports": [80, 554] },
"timestamp": "2025-01-02T12:00:05Z"
}
]
}- Optical detection works best in dark environments.
- Move your phone slowly while scanning the room.
- For magnetometer scanning, watch for sharp spikes above baseline.
- Combine all three modes for highest accuracy.
Contributions are welcome! Feel free to submit issues, suggestions, or pull requests.
This project is licensed under the MIT License — free to use and modify.