Skip to content

Repository files navigation

OpenBeacon

OpenBeacon is an open-source, privacy-focused family location app. Self-hosting is supported allowing running the backend on your own hardware; the architecture assumes sensitive data is encrypted so the people running servers are not in a position to read your family’s locations or activity.

This repo is a Bun monorepo: a React Native (Expo) app under apps/mobile, an API server under apps/backend, and shared packages (api, database, encryption, schemas, and others) at the root.

Requirements

  • Bun (see packageManager in the root package.json for the version this repo expects)
  • Java 17 — needed for Android builds
  • PostgreSQL and Redis — the backend expects them; URLs are set in .env

Development Enviroment Setup

Copy the example env and fill in values for your machine:

cp .env.example .env

Install dependencies:

bun install

Apply database migrations (from the repo root):

cd ./packages/database
bun run db:migrate

Run the backend

bun run dev --filter=@openbeacon/backend

The API listens on the port in OPENBEACON_API_PORT (default 3000).

Run the mobile app

From apps/mobile copy the example env and fill in values for your machine:

cd ./apps/mobile
cp .env.example .env
cd ./apps/mobile
bun run android

For iOS on macOS, from the same directory:

bun run ios

License

See LICENSE.md.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages