whatisgithub

What is nopeek-android?

getnopeek/nopeek-android — explained in plain English

Analysis updated 2026-06-24

15KotlinAudience · generalComplexity · 2/5LicenseSetup · easy

In one sentence

NoPeek is an Android app that scans for nearby smart glasses and VR headsets such as Meta Ray-Ban and Apple Vision Pro using Bluetooth and alerts you when one is detected, with no internet connection required.

Mindmap

mindmap
  root((NoPeek))
    What it does
      Detects smart glasses
      Bluetooth scanning
      Local alerts only
    Detection methods
      Manufacturer company ID
      Device name check
      MAC address prefix
    Supported devices
      Meta Ray-Ban glasses
      Snap Spectacles
      Apple Vision Pro
      Meta Quest headsets
    Privacy
      No internet needed
      No data sent
      Local history only
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Get alerted when someone wearing Meta Ray-Ban smart glasses or Snap Spectacles enters within 10-15 meters outdoors.

USE CASE 2

Contribute new device support by adding a Bluetooth manufacturer company ID to NoPeek's detection database.

USE CASE 3

Run NoPeek in the background during meetings to receive push notifications if a recording-capable wearable appears nearby.

What is it built with?

KotlinAndroidBluetooth LE

How does it compare?

getnopeek/nopeek-androidmeta-quest/portal-samplessir-mmd/dataproxy
Stars151515
LanguageKotlinKotlinKotlin
Setup difficultyeasyhardeasy
Complexity2/53/52/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min
Use freely for any purpose including commercial use as long as you keep the copyright notice.

So what is it?

NoPeek is an Android app that scans for nearby smart glasses and VR headsets using Bluetooth, and alerts you when it finds one. The motivation is that modern smart glasses like Meta Ray-Ban frames look identical to ordinary glasses but can record video and audio. This app attempts to detect them before a recording begins. The detection works by listening for Bluetooth Low Energy signals that nearby devices broadcast. Every Bluetooth device includes a manufacturer identifier in that signal, and this identifier cannot be changed or randomized. NoPeek maintains a list of known identifiers for camera-capable wearables, including Meta Ray-Ban glasses, Oakley Meta glasses, Snap Spectacles, TCL RayNeo glasses, Meta Quest headsets, Apple Vision Pro, and several others. When the app sees one of those identifiers, it alerts you with a vibration and sound, and optionally a push notification if the app is running in the background. The app uses a three-layer detection approach. The primary method is the manufacturer company ID embedded in the Bluetooth advertisement, which the README describes as immutable. A secondary check looks at the device name, which is only visible when a device is pairing or just powered on. A fallback check uses the MAC address prefix, though modern devices randomize their MAC addresses so this is treated as low-confidence supporting evidence. Apple devices receive special handling: since the Apple company ID is shared across all Apple products, the app requires both the company ID and the device name Vision Pro before flagging an Apple device, to avoid your phone triggering its own alert. The detection range is roughly 10 to 15 meters outdoors and 3 to 10 meters indoors, based on the default signal strength threshold. That threshold is adjustable in the settings. The app requires no internet connection. No data is sent anywhere. Detection history is stored locally on your phone only. The source code is open and the project is licensed under MIT. The README notes that detection is not guaranteed since some devices may not broadcast Bluetooth signals at all times.

Copy-paste prompts

Prompt 1
I want to add detection support for a new smart glasses model to NoPeek. Show me where the manufacturer company IDs are defined in the Kotlin code and how to add a new entry.
Prompt 2
Help me write an Android Bluetooth LE scanner in Kotlin that reads manufacturer IDs from BLE advertisement packets, following the same approach NoPeek uses for its primary detection layer.
Prompt 3
I want to fork NoPeek and add a feature that logs each detection event with a timestamp to a local SQLite database. Walk me through where to hook into the existing detection callback.

Frequently asked questions

What is nopeek-android?

NoPeek is an Android app that scans for nearby smart glasses and VR headsets such as Meta Ray-Ban and Apple Vision Pro using Bluetooth and alerts you when one is detected, with no internet connection required.

What language is nopeek-android written in?

Mainly Kotlin. The stack also includes Kotlin, Android, Bluetooth LE.

What license does nopeek-android use?

Use freely for any purpose including commercial use as long as you keep the copyright notice.

How hard is nopeek-android to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is nopeek-android for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.