High-precision indoor positioning framework, version 3.
Clone or download
schollz Merge pull request #120 from krsoninikhil/smallcase
Covert family name to smallcase on server side
Latest commit 1eeee02 Sep 18, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATES Create bugs.md Mar 15, 2018
doc use blackfriday Sep 18, 2018
server Merge pull request #120 from krsoninikhil/smallcase Sep 18, 2018
.gitattributes Linguist vendoring Mar 14, 2018
.gitignore Initial commit Dec 25, 2017
Dockerfile use go1.11 for docker Sep 18, 2018
LICENSE Create LICENSE Mar 12, 2018
README.md avoid copyright issues with escher image Aug 14, 2018
go.mod update go.mod Sep 18, 2018
main.go Add docs Mar 7, 2018
runner.conf Add docs Mar 7, 2018


Version 3.0 Version 3.0 Version 3.0 Donate Say Thanks

The Framework for Internal Navigation and Discovery (FIND) is like indoor GPS for your house or business, using only a simple smartphone or laptop.

This version, 3.X, is a complete re-write of the previous versions 2.x.

About the project

This repository is a complete re-write of the previous version of FIND (github.com/schollz/find). There are notable improvements from the previous version:

  • Support for any data source - Bluetooth / WiFi / magnetic fields / etc. (previously just WiFi)
  • Passive scanning built-in (previously required a separate server)
  • Support for Bluetooth scanning in scanning utility (previously just WiFi)
  • Meta-learning with 10 different machine learning classifiers (previously just three)
  • Client uses Websockets+React which reduces bandwidth (and coding complexity)
  • Rolling compression of MAC addresses for much smaller on-disk databases (see stringsizer)
  • Data storage in SQLite-database (previously it was BoltDB)
  • Released under MIT license (more commercially compatible than AGPL)

The API for sending fingerprints (/track and /learn) and MQTT endpoints are backward compatible.


FIND3 is stable and ready for use.


FIND3 is a framework with multiple components. There are multiple repositories that have the components, including:

Reporting issues

Please report issues through this repo's issue tracker.


Subscribe to the Slack channel to get latest information about the project and get help.

Use the FIND mailing list for discussion about use and development.