# Install tile38 with Homebrew, Nix

In-memory geolocation data store, spatial index, and realtime geofence. Version 1.38.0 via Homebrew; verified 2026-07-26. Also installable with nix: nix profile install nixpkgs#tile38.

## Install

```sh
sudo av install brew:tile38
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install tile38
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#tile38
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ti/tile38/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:tile38
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/tile38>
- **Version:** 1.38.0
- **Source summary:** In-memory geolocation data store, spatial index, and realtime geofence
- **Homepage:** <https://tile38.com/>
- **Repository:** <https://github.com/tidwall/tile38>
- **Upstream docs:** <https://tile38.com/>
- **License:** MIT
- **Source archive:** <https://github.com/tidwall/tile38.git>
- **Last updated:** 2026-07-26T00:50:41+02:00
- **Generated:** 2026-08-04T22:13:35+00:00

## Executables

- tile38-cli (cli)
- tile38-server (cli)
- tile38-cli (alias)
- tile38-server (alias)

## Build dependencies

- go

## Install behavior

- Post-install hook: not defined
- Service: declared
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-08-04
- Package-manager version: 1.38.0
- Package-manager updated: 2026-07-26
- Local data: ok
- Upstream repository: https://github.com/tidwall/tile38
- info: No cached GitHub release or tag data was available.
## Project history and usage

Tile38 is an open-source, in-memory geolocation data store, spatial index, and realtime geofencing server. Its README describes support for latitude/longitude points, bounding boxes, XYZ tiles, Geohashes, GeoJSON, command-line operation, multiple network protocols, replication, and on-disk persistence.

### Project history

The Tile38 GitHub repository was created in March 2016 by Tidwall. From the beginning, the project presented itself as a specialized geospatial data server rather than a general database: a Go binary pair, tile38-server and tile38-cli, centered on location objects, spatial searches, and realtime geofence notifications.

Official documentation emphasizes Redis-like ergonomics. Tile38 supports HTTP, WebSockets, telnet, and Redis RESP; returns RESP or JSON; and ships a full command-line interface. That made it familiar to infrastructure users who already understood key/value stores and command-oriented servers.

The project has continued as a versioned 1.x server with regular release tags, Docker images, prebuilt binaries, and Homebrew installation instructions. The README also documents client libraries in multiple languages, leader/follower replication, metrics, and a benchmark tool.

### Adoption history

Tile38's adoption comes from applications that need live spatial state: fleets, moving assets, map objects, geofence notifications, and nearby/within/intersects queries. Its official examples use a fleet collection with trucks or buses and demonstrate realtime events when objects enter or leave monitored areas.

For package-manager users, Tile38 is attractive because a single install provides both server and CLI. Homebrew users can brew install tile38, start tile38-server, and connect with tile38-cli without setting up a larger spatial database stack.

GitHub repository metadata shows a substantial open-source audience for a specialized Go database, with thousands of stars, hundreds of forks, and topics around database, geospatial, geofences, location, spatial, and index.

### How it is used

Tile38 is used by starting tile38-server and interacting through tile38-cli or supported network protocols. The README's basic workflow sets points in a collection, scans the collection, performs nearby searches, retrieves objects, deletes entries, and drops collections.

Its distinctive usage is geofencing. Official docs show SETCHAN and SETHOOK commands that turn a search into a live fence, then stream enter, exit, inside, outside, or cross detections over pub/sub channels or webhooks.

Because responses can be JSON or Redis RESP and because clients exist in many languages, Tile38 fits both ad hoc CLI experiments and application integration.

### Why package nerds care

Tile38 is significant in package databases because it is a real server hidden behind a small formula name: installing it yields a spatial datastore, CLI, benchmark tool, persistence, replication, and protocol compatibility in one Go-built package.

It also represents a common package-nerd pattern: instead of installing PostgreSQL/PostGIS or building a custom service for simple live location problems, users can install a focused daemon with first-class geofence commands and scriptable CLI access.

### Timeline

- 2016: GitHub repository for tidwall/tile38 created.
- 2016 onward: Tile38 develops as a Go geospatial server with tile38-server and tile38-cli.
- 2020s: Official README documents Docker, Homebrew, prebuilt binaries, client libraries, replication, metrics, and release binaries.
- 2026: GitHub repository metadata and tags show continued 1.x releases and active maintenance.

### Related projects

- Tile38's protocol choices relate it to Redis-style command servers and RESP clients.
- Its data model and command set relate it to geospatial databases, spatial indexes, GeoJSON tooling, and geofencing systems.

### Sources

- <https://api.github.com/repos/tidwall/tile38 - GitHub repository metadata for creation date, language, topics, release tags, and adoption signals.>
- <https://github.com/tidwall/tile38#readme - official README for purpose, features, install options, components, CLI examples, protocols, geofencing, replication, and persistence.>
- <https://tile38.com/topics/geofencing - official documentation for geofence command usage, pub/sub notifications, and detection behavior.>


## Security Notes

broad file, network, media, or database tool signal. formula declares a Homebrew service.

- **Geiger risk:** orange / medium
- broad file, network, media, or database tool signal
- formula declares a Homebrew service


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: data/config

## Credential files

- Unix: data/config
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** tile38
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - tile38: normalized package name match | nixpkgs package indexes: pkgs/by-name/ti/tile38/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Related links

- [Secret-risk packages](https://pkg.so/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://pkg.so/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://pkg.so/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Networking and protocol packages](https://pkg.so/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [go](https://pkg.so/brew/go/) - Build dependency declared by Homebrew.
- [postgis](https://pkg.so/brew/postgis/) - Shares pkgdb curated category or tags: cli, data, database, geospatial.
- [electric](https://pkg.so/brew/electric/) - Shares pkgdb curated category or tags: cli, data, database, realtime.
- [pinot](https://pkg.so/brew/pinot/) - Shares pkgdb curated category or tags: cli, data, database, realtime.
- [sqlite](https://pkg.so/brew/sqlite/) - Shares pkgdb curated category or tags: cli, data, database.
- [redis](https://pkg.so/brew/redis/) - Shares pkgdb curated category or tags: cli, data, database.
- [gdbm](https://pkg.so/brew/gdbm/) - Shares pkgdb curated category or tags: cli, data, database.
- [mysql](https://pkg.so/brew/mysql/) - Shares pkgdb curated category or tags: cli, data, database.
- [postgresql@14](https://pkg.so/brew/postgresql-14/) - Shares pkgdb curated category or tags: cli, data, database.
- [tarantool](https://pkg.so/brew/tarantool/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, data, database, in-memory, memory.

## Combined YAML source

View the package source record on GitHub. [combined/tile38.yml](https://github.com/mxcl/pkgdb/blob/main/combined/tile38.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
