An open API service indexing awesome lists of open source software.

https://github.com/duhow/bluemate

Find your nearby mates!
https://github.com/duhow/bluemate

Last synced: 10 days ago
JSON representation

Find your nearby mates!

Awesome Lists containing this project

README

          

# Bluemate


Find nearby Bluemate users via BLE iBeacon with distance and compass.



Build

Android 8.0+
Kotlin



Get it on Obtainium


Download APK

---

Bluemate uses Bluetooth Low Energy (BLE) to discover other nearby users running the app. Each device advertises as an iBeacon and scans for others, reporting their estimated distance in meters. A built-in compass shows your current heading to help locate nearby users.

### Features

- **iBeacon advertising & scanning** – automatically broadcasts and discovers nearby Bluemate users.
- **Selectable discovery mode** – choose between full scan mode (announce + discover) or beacon-only mode (announce only) for devices that cannot reliably do both at once.
- **Distance estimation** – calculates approximate distance in meters from BLE signal strength (RSSI).
- **Compass** – displays your device orientation using accelerometer and magnetometer sensors.
- **Background service** – runs as an Android foreground service so scanning continues when the app is in the background.
- **Battery optimization** – requests exemption from battery restrictions to ensure continuous operation.

### Keystore

To sign your APK, create a keystore. **Keep it safe**.

```sh
keytool -genkeypair -v -keystore release.jks -alias bluemate -keyalg EC -groupname secp256r1 -sigalg SHA256withECDSA -validity 10000
```

You can upload it to GitHub Actions as Secret `ANDROID_KEYSTORE_BASE64` to generate Release APKs.

```sh
base64 -w 0 release.jks ; echo
```

Then define `ANDROID_KEYSTORE_PASSWORD`, `ANDROID_KEY_PASSWORD` (default is the same), and `ANDROID_KEY_ALIAS` as configured.