Repository navigation
Releases: EthnTuttle/OpenBible2
Release list
Kings v0.1.0 — NIP-84 Highlights
Kings v0.1.0
Fork of OpenBible2 adding Nostr-native Bible verse highlights and annotations.
Features
- NIP-84 highlights — highlight Bible text, attach notes, stored as
kind:9802Nostr events - Per-verse rendering — corner annotation indicators on highlighted verses, tap to view details
- Embedded relay — in-process Ktor CIO + Room/SQLite relay on
127.0.0.1:4870, zero config - Negentropy sync (NIP-77) — efficient set reconciliation with external relays
- Relay client — OkHttp WebSocket client with multi-relay pool support
- Key management — secp256k1 keypair in EncryptedSharedPreferences, NIP-55 Amber signer stub
- Highlights screen — browse all highlights, publish to public relays, delete
- Nostr settings — identity display, local/public relay config, auto-publish toggle
Security fixes (vs upstream)
- Fix Zip Slip path traversal in
restoreBackup() - Fix FileInputStream resource leak in
getChecksum() - Add
network_security_config.xmlblocking cleartext traffic - Sanitize translation abbreviation in file path construction
- Move startup file I/O off the main thread
Note
This APK is signed with a development key, not the upstream release key.
Kings v0.1.8 - Auto-Publish & Kind 1 Notes
What's New
Auto-Publish Highlights
- Enable "Auto-publish to public relays" in Settings > Nostr
- New highlights are automatically published when created
- No need to manually publish each highlight
Kind 1 Quote Notes
- When a highlight is published, a kind 1 note is also created
- The note quotes your highlighted text with the Bible reference
- Visible to ALL Nostr clients, not just NIP-84 compatible ones
- Example format:
"For God so loved the world" — John 3:16 Your comment here
Bug Fixes
- Fixed chapter number being off by one
- Fixed relay connection status detection
Installation
Download and install kings-v0.1.8.apk. You may need to enable "Install from unknown sources" in your device settings.
Kings v0.1.7 - Share Highlights & Accessibility
What's New
Share Highlights
- Share published highlights as
nostr:nevent1...links - Other Nostr clients (Amethyst, Damus, etc.) can open and display shared highlights
- Includes relay hints so clients know where to fetch the event
Accessibility Improvements
- Relay status now uses symbols instead of colors:
✓= Connected~= Connecting✗= Disconnected
- Highlight status uses
✓ Published/○ Local only
Installation
Download and install kings-v0.1.7.apk. You may need to enable "Install from unknown sources" in your device settings.
Kings v0.1.6 - Relay Status & Publish Tracking
What's New
Relay Status Indicators
- Settings screen now shows connection status for each relay
- Green dot = connected, Yellow = connecting, Red = disconnected
- Relays are tested when Settings loads
Publish Tracking
- Highlights now track which relays they've been published to
- "Published" (green) or "Local only" (gray) badge on each highlight card
- Database stores publish confirmations from relays
Improved Publish Flow
- Publishing now waits for OK response from relays before confirming
- Toast shows success/failure with relay count
- Proper error handling for failed publishes
Installation
Download and install kings-v0.1.6.apk. You may need to enable "Install from unknown sources" in your device settings.
Kings v0.1.5 - npub in Bech32 Format
What's New
npub Displayed in Standard Nostr Format
- Bech32 encoding: Public key now shows as
npub1...instead of hex - Copy as npub: Clipboard gets the bech32 format for easy sharing
- QR code contains npub: Scan-friendly standard Nostr format
Import Supports Both Formats
- nsec1...: Import private key in standard Nostr bech32 format
- Hex: Still accepts 64-character hex private keys
Technical Changes
- Added full Bech32 encoder/decoder in Keys.kt
- New utility functions:
hexToNpub()/npubToHex()hexToNsec()/nsecToHex()
- Proper checksum validation for bech32 strings
Example
Before: a1b2c3d4e5f6... (64 hex chars)
After: npub1... (63 char bech32)
Installation
Download kings-v0.1.5.apk and install on your Android device (API 27+).
Kings v0.1.4 - Copyable npub + QR Code + Amber Fix
What's New
Copyable npub
- Tap to copy: Tap your public key in Settings to copy it to clipboard
- Shows truncated key with "Tap to copy" hint
- Toast confirmation when copied
QR Code for Profile Sharing
- Show QR button: Tap to display a QR code of your public key
- Easy to scan from another device
- Uses ZXing library for reliable QR generation
Amber Detection Fixed
- Fixed: "Amber not installed" error on Android 11+
- Added
<queries>to AndroidManifest for package visibility - Amber signer should now be detected properly
Technical Changes
- New
QrCode.ktcomponent using ZXing core library - Added ZXing dependency (com.google.zxing:core:3.5.3)
- Added package query for
com.greenart7c3.nostrsignerin manifest
Installation
Download kings-v0.1.4.apk and install on your Android device (API 27+).
Note: Same signing key as v0.1.1-v0.1.3. Upgrading from v0.1.0 requires uninstall first.
Kings v0.1.3 - Highlight Fix + Amber Support
What's New
Highlight Now Appears in Selection Menu
- Fixed: "Highlight" option now always appears in the text selection floating toolbar
- Uses
SHOW_AS_ACTION_ALWAYSto ensure visibility - Works regardless of keypair state (gracefully handles if not logged in)
Amber Signer Integration
- Connect to Amber: Tap "Connect Amber" button in Settings to use your Amber identity
- Launches Amber via NIP-55 intent to get public key
- Stores public key for external signing (private key stays in Amber)
- Shows toast feedback on connection success/failure
Technical Changes
CallbackStatepattern ensures ActionMode callback reads current valuesstorePublicKeyOnly()for external signer supporthasKeypair()now checks for npub (works with Amber users)isUsingExternalSigner()helper to detect Amber mode
Installation
Download kings-v0.1.3.apk and install on your Android device (API 27+).
Amber Users: Install Amber first, then connect from Settings.
Kings v0.1.2 - Native Text Selection + Highlight
What's New
Native Text Selection with Highlight Action
- Select text normally - long-press and drag to select any portion of a verse
- Highlight in floating menu - "Highlight" action appears in the native Android text selection toolbar
- Partial verse highlights - highlight just the words you want, not the entire verse
- Uses native Android
TextViewwithcustomSelectionActionModeCallbackfor proper UX
How It Works
- Long-press on any verse text to start selection
- Drag the selection handles to adjust
- Tap "Highlight" in the floating toolbar
- Add an optional note and save
Technical Changes
- New
SelectableVerseTextcomponent usingAndroidView+ nativeTextView - Custom
ActionMode.Callbackadds "Highlight" menu item - Removed previous
combinedClickable/onLongClickapproach - Simplified
VerseTextto display-only component
Installation
Download kings-v0.1.2.apk and install on your Android device (API 27+).
Note: Uses same signing key as v0.1.1. If upgrading from v0.1.0, uninstall first.
Kings v0.1.1 - Long-press Highlights & Nostr Login
What's New
Long-press to Highlight
- Long-press any verse to create a NIP-84 highlight
- Highlights are stored locally in the embedded relay
- View and manage highlights via the corner annotation indicator
Nostr Login UI
- Generate Key: Create a new Nostr keypair directly in the app
- Import Key: Import an existing nsec (hex format)
- View your npub in settings
Relay Management
- Configure local embedded relay URL
- Add/remove public relays for sync
- Auto-publish toggle for public relays
Bug Fixes
- Fixed Settings.kt compilation errors (imports, extension function syntax)
Installation
Download kings-v0.1.1.apk and install on your Android device (API 27+).
Note: This release uses a new signing key. If you have v0.1.0 installed, you'll need to uninstall it first.