go-haystack: Track Devices with Apple's Find My Network, No Apple Hardware Needed

This repository profile is provided by osrepos.com, an open source repository discovery platform.

go-haystack: Track Devices with Apple's Find My Network, No Apple Hardware Needed

Summary

go-haystack enables users to track personal Bluetooth devices by leveraging Apple's extensive "Find My" network. This innovative project utilizes OpenHaystack and Macless-Haystack, providing robust tools developed in Go and TinyGo. A key advantage is its ability to establish a custom Find My network without requiring any proprietary Apple hardware.

Repository Information

Analyzed by OSRepos on October 16, 2025

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

go-haystack is an exciting open-source project that empowers you to track your personal Bluetooth devices using Apple's vast "Find My" network. It achieves this by integrating with OpenHaystack and Macless-Haystack, offering a suite of tools written in Go and TinyGo. The most compelling feature is its ability to set up a custom Find My network entirely without the need for any Apple hardware.

The project allows you to build your own beacons using TinyGo firmware, compatible with various nRF-based boards and even Linux systems like Raspberry Pi. Additionally, go-haystack includes TinyScan, a hardware scanner for local devices, providing a complete solution for personal device tracking.

Installation

To get go-haystack up and running, you'll need to follow a few steps, including setting up supporting services.

Apple ID

You must have an Apple ID with 2FA enabled. Note that only SMS/text message as a second factor is currently supported.

anisette-v3-server

Start the anisette-v3-server using Docker:

docker network create mh-network
docker run -d --restart always --name anisette -p 6969:6969 --volume anisette-v3_data:/home/Alcoholic/.config/anisette-v3 --network mh-network dadoum/anisette-v3-server

macless-haystack

  1. Start and set up your Macless Haystack endpoint in interactive mode:
    docker run -it --restart unless-stopped --name macless-haystack -p 6176:6176 --volume mh_data:/app/endpoint/data --network mh-network christld/macless-haystack
    
    You will be prompted for your Apple ID, password, and 2FA. Once you see serving at port 6176 over HTTP, the setup is complete. Hit ctrl-C to exit the process.
  2. Restart the macless-haystack server:
    docker restart macless-haystack
    
    For more details, refer to the original Macless-Haystack instructions.

go-haystack

Install the go-haystack command-line tool:

go install github.com/hybridgroup/go-haystack/cmd/haystack@latest

Examples

Once installed, go-haystack provides simple commands for scanning and managing your devices.

Scanning for local devices

To scan for any local devices within range, use the scan command:

haystack scan

This will return a list of nearby devices, including their MAC addresses, RSSI values, and battery status.

Adding a new device

  1. Generate keys for your new device:
    haystack keys DEVICENAME
    
    Replace DEVICENAME with your desired name for the device. This command will create DEVICENAME.keys and DEVICENAME.json files.
  2. Flash the hardware with the TinyGo target and your device's name:
    haystack flash DEVICENAME nano-rp2040
    
    This command compiles the TinyGo firmware with your generated keys and flashes it to the specified device. For more information on TinyGo, visit https://tinygo.org/getting-started/overview/.
  3. Upload the device's JSON configuration to macless-haystack: Navigate your web browser to https://dchristl.github.io/macless-haystack/. This is a single-page web application that interacts with your local macless-haystack instance. Click on "Accessories," then the "+" button, and select the DEVICENAME.json file you generated earlier.

Your device is now set up! It might take some time for the first data to appear in the Macless-Haystack web UI as your device needs to be in range of an iPhone to be picked up by the Find My network.

Why Use go-haystack?

go-haystack offers a unique and powerful solution for personal device tracking. Its primary advantage is the ability to leverage Apple's robust "Find My" network without needing any Apple hardware, making it accessible to a broader audience. The use of Go and TinyGo ensures efficient, performant, and resource-friendly applications, ideal for embedded systems and microcontrollers. This project provides a customizable and open-source alternative for those interested in building their own tracking beacons, offering greater control and privacy over their personal devices.

Links

Related repositories

Similar repositories that may be relevant next.

Agent Sandbox: Managing Isolated, Stateful Workloads on Kubernetes

Agent Sandbox: Managing Isolated, Stateful Workloads on Kubernetes

August 8, 2026

Agent Sandbox introduces a Sandbox Custom Resource Definition (CRD) and controller for Kubernetes, designed to simplify the management of isolated, stateful, singleton workloads. It provides a declarative API for use cases such as AI agent runtimes, development environments, and persistent single-container sessions. This project aims to offer a lightweight, single-container VM experience built on Kubernetes primitives.

kubernetesai-agentsworkload-management
AgentTeams: Collaborative Multi-Agent OS for Human-in-the-Loop Task Coordination

AgentTeams: Collaborative Multi-Agent OS for Human-in-the-Loop Task Coordination

August 7, 2026

AgentTeams is an innovative open-source Collaborative Multi-Agent Operating System designed for transparent, human-in-the-loop task coordination. It leverages Matrix rooms to facilitate seamless interaction between human users and AI agents. This platform empowers teams to manage complex tasks efficiently, ensuring full visibility and control over agent activities.

agent-teamsopenclawgo
WebhookX: The Next-Generation Webhooks Gateway for Event Delivery

WebhookX: The Next-Generation Webhooks Gateway for Event Delivery

June 9, 2026

WebhookX is an open-source, cloud-native webhook gateway designed for robust and scalable event processing. It efficiently handles receiving, validating, transforming, and delivering events, ensuring reliable communication across distributed systems. This project provides a comprehensive solution for managing webhooks with advanced features like automatic retries, fan-out capabilities, and extensive plugin support.

cloud-nativeevent-gatewaywebhooks
Task: A Modern, Cross-Platform Build Tool for Streamlined Workflows

Task: A Modern, Cross-Platform Build Tool for Streamlined Workflows

May 18, 2026

Task is an open-source, cross-platform build tool inspired by Make, designed to simplify and automate modern development workflows. It allows developers to define and run tasks using a simple YAML configuration, offering a powerful and intuitive alternative to traditional build systems. Written in Go, Task ensures fast execution and broad compatibility across various operating systems.

build-tooldevopsgo

Source repository

Open the original repository on GitHub.

22 counted GitHub visits

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️