Back to Buckler

BUCKLER / WHAT’S NEW

See what’s
new in Buckler.

Every released version of the app, newest first.

VERSION 0.7.2

Guests are told where their work lives, and told what joined their account when they sign in.

Added

  • Guest storage notice: once at first use, then a reminder at 10+ items or after 14 days (at most every 30), with iPhone and iPad wording.
  • Guest joined notice: after signing in, what joined the account, and whether it was combined with work saved on the device.
  • Persistent storage request and a Stored on this device row in Settings → Privacy & Data.
  • Spanish and Portuguese text.
Release 0.7.2 on GitHub
VERSION 0.7.1

See and end your other sign-ins, and a fix for losing an account's saved work when it signs back in.

Added

  • Where you're signed in: Settings → Account & Sync lists every browser and device signed in to the account, with Sign out for each and Sign out of other devices., and.

Fixed

  • Data loss on sign-back-in. If an account signed out, a guest then wrote on the same device, and the account signed back in, its saved work was left behind and sync deleted it from the server. Saved work is now merged with the guest's ( outcome), and the sync state is kept with the saved work. Covered by. Affected 0.6.0 and 0.7.0; a check of the one live account found no deleted records.
  • A sign-out with nothing to keep no longer leaves an old vault that could bring back deleted work.

Changed

  • The sync device label helper moved from the sync controller to.
Release 0.7.1 on GitHub
VERSION 0.7.0

Buckler can be installed on desktop and phone and tells you when a new version is ready, and the emailed sign-in code works at any length.

Added

  • Install: a first-load invitation ("Add Buckler to your desktop / home screen…"), browser prompt on Chrome, Edge and Android, steps on iPhone and iPad and for Android menus, snoozed 14 days by "Maybe later"; Settings → General → App has the same option.
  • Update notifications: new versions wait for the reader; the Buckler App update dialog (running and new version, reasons, release-notes link to), hourly and on-return checks, Settings → Version / Check for updates., written by the build.
  • Spanish and Portuguese text for all of it. Manifest.

Changed

  • The service worker no longer updates silently; it claims the first visit so offline works without a second load.
  • Emailed code accepts 6 to 10 digits: the project sets the length, and the form assumed six. The copy no longer says "6-digit".

Fixed

  • A tab open on its first visit did not reload after an update.
Release 0.7.0 on GitHub
VERSION 0.6.0

Buckler becomes local first with optional accounts: your work is stored safely on the device, can be backed up, and syncs between devices when you sign in with Google or an emailed code. Plus daily reminders for plans and devotionals, a Remember card, and Markdown and print export of notes.

Added

  • Accounts and sync: Google and emailed six-digit code sign-in (no passwords), guest mode by default, per-account data on a shared device (claim, vault, restore), a sync engine with last-write-wins, deletions, offline edits and a start-up "Continue where you left off?" offer for another device's place, Settings → Account & Sync (status, Sync now, Delete account). Backend: Supabase (, row-level security,).
  • Data safety: user data in IndexedDB with a localStorage fallback, one-off migration of existing data, a toast and a standing warning when a save fails, Backup and restore with undo (Settings → Privacy & Data), a versioned schema with migrations, and deletion tombstones.
  • Daily reminders for reading plans and followed devotionals: a ⋮-menu dialog (time, days), once a day, while the app is open.
  • Remember: an answered prayer or a highlighted verse on Today.
  • Notes export: Download as Markdown and Print, in Bible order.
  • on bookmarks, history and plan progress; classifying every storage key; the preference split into portable, resume and device-local.
  • Deployment config for Cloudflare Workers Static Assets.

Changed

  • Sign-in dialog replaced: email + password + name (mock) became Google or an emailed code, always dismissible. gained; password methods removed.
  • Font size, text width and immersive reading are device-local; the study panel's open state is not stored. The last study section and recent versions sync as resume state.
  • ASV and WEB load on demand as their own chunks; the entry chunk fell from 15.6 MB to about 0.3 MB. Every Bible is a chunk of its own.
  • no longer writes on read (migration 1 does it once).
  • The build sets its own 4 GB Node heap and no longer gzips outputs for size reports (a 1 GB heap ran out of memory); Node pinned to 22.
  • The product is no longer "UI-only": README, AGENTS.md and say so.

Fixed

  • Data could be lost silently when the browser's storage was full.
  • A signed-out device kept the previous account's data on screen.
Release 0.6.0 on GitHub
VERSION 0.5.0

Section headings and red-letter text in the reader, tabs that hold the things you are working on rather than the places you visit, and a Plan Mode toolbar that stays on one row.

Added

  • Section headings: 3,016 editorial headings ("Jesus and Nicodemus") from the Berean Standard Bible, shared by every translation and anchored to verse numbers, in verse and paragraph mode. Setting: *Show section headings* (on).
  • Red letter: the words of Christ in red for KJV, KJVA and WEB, stored as word-index spans from the editions' markup. New token (light, dark and High Contrast values). Setting: *Red letter* (on), disabled with a reason where an edition has none. Editions that mark it carry a Red letter label on their Bible picker pill and in Settings' translation list., shared; keeps. A test fails when a translation's flag and its data disagree.
  • Plan Mode toolbar (–): one row that never wraps, sized by its own width (container queries) so the sidebar, study drawer and note column all count; a ⋮ menu for what a width cannot fit; a plan switcher on the plan's title (running plans, progress, Manage).
  • Tabs for Selah and Library tools: a Journal entry being written, a new prayer and a prayer being edited each get a tab, closed when the editor saves, cancels or backs out; dictionaries, topical guides and word-study lexicons get one each; so does a History event.

Changed

  • Tabs name things, not places: a tab is one note, one Codex, one Library resource or tool, one History event, one devotional, Compare, or a Selah draft. Today, Journey, Selah, Settings, My Citadel and its lists (Notes, Bookmarks, Highlights, Prayers, Codices) and the Library shelves no longer open one; saved tabs for them are dropped. Tab ids now name the thing (, …) so each Codex, note and resource has its own tab, still capped at three. Tabs for a deleted note, Codex or prayer are removed. Anywhere but Reading the Bible selector is parked; on phones a temporary chip names a place that has no tab.
  • Sidebar: the My Citadel row is now Overview, under the MY CITADEL heading. The phone tab bar keeps "Citadel".
  • Highlights are rounded and padded: verse highlights use the radius with 8px of inline padding, phrase highlights round their two ends (4px padding) so a run is not notched at each space.
  • The schedule dialog's readings are compact single-line rows (about half the height).
  • Alabaster is a neutral white (, ink) and Night a neutral charcoal.
  • Journal subtitle: "Responses from Selah, and any note in your Journal Codex."

Fixed

  • Switching Plan Mode to another plan raced, which judged the move against the previous plan and asked to leave Plan Mode.
Release 0.5.0 on GitHub
VERSION 0.4.0

A personal-study dashboard, a note panel beside Scripture, width-aware panel layout, and three daily-reading areas: Reading Plans, Devotionals and Resources.

Added

  • My Citadel dashboard: grouped search across Scripture notes, general notes, highlights, bookmarks and Codices; Notes / Bookmarks / Highlights / Codices destination cards with real counts; six recent items with Open in Bible; Codices tiles; recently viewed chapters; empty states. A My Citadel row sits under the MY CITADEL sidebar label.
  • Highlight labels: rename what each of the five colours means, in Settings → Highlights → Labels or the Edit labels dialog on the Highlights Library. Saved with preferences; shown on swatches, the colour filter, cards, Codex rows and Citadel search.
  • Note panel: book, chapter and verse notes open beside Scripture — docked (380–460px) on wide screens, a bottom sheet otherwise. Header with Minimize (to a bar, draft kept), Open in Notes, Close. Preview mode with Edit; Save stays open and returns to the preview. The verse being edited stays marked and its toolbar hides.
  • Workspace panel layout: one resolver decides room for Navigation, Bible, Notes and Study. Navigation folds to a 62px rail when needed; Bible, Notes and Study fit together from ~1342px (Bible ≥ 640px, panels ≥ 320px); explicit Navigation expand wins; panels become sheets when too narrow; resize-aware; calm column and slide-in animation with reduced-motion support. Rail gains a Codices icon.
  • Reading Plans: Active / Discover / Completed, up to two active, scheduled or own-pace, generated plans, and Plan Mode in the Bible view (plans control, strip, schedule dialog).
  • Devotionals: its own workspace and reader. Public-domain works: *Morning and Evening* (Spurgeon, CrossWire SME 1.7;), *Our Daily Walk* (Meyer), *Devotional Sermons* (Morrison), *The Bent-Knee Time* (Gordon). Landing page per the mockup (Daily | Series | Sermons, search, Today cards, Recent, library; no streak). Follow up to two (Replace at the limit). Preview for devotionals not followed, built from the work itself (title page, today's sample, counted facts). Reader with a Devotionals › name breadcrumb switcher, date navigation, Morning/Evening, Today, Mark as read and a History popover.
  • Resources: category tabs and public-domain books (E. M. Bounds, *The Necessity of Prayer* and *The Weapon of Prayer*), read by chapter with the last chapter remembered.
  • Commentary sources: Barnes' New Testament Notes, Kretzmann's Popular Commentary and Scofield Reference Bible notes (1917) alongside Matthew Henry.
  • on Bookmarks and Highlights scrolls to and outlines a card. primitive; / shared rows.

Changed

  • Notes is one workspace with Scripture / General scopes picked on the page (List or Bible Tree for Scripture). "All notes" is gone; a bare redirects to My Citadel; Codex workspaces mix notes, bookmarks and highlights.
  • Sidebar: Bible, Plans, Devotionals, Resources, then MY CITADEL (My Citadel, Notes, Bookmarks, Highlights, Codices). Mobile tab bar "Notes" → "Citadel".
  • Viewing an existing book, chapter or verse note (View, note marks) opens the note panel in preview instead of a popup.
  • The top-bar menu button reads Expand / Collapse navigation with; an automatic rail is never saved as the preference.
  • Workspace tabs include My Citadel, Plans, Devotionals and Resources.

Fixed

  • Reader side chevrons overflowed a narrow Bible column: the container query could not read; the reader now measures itself.
  • Plans and Devotionals tabs were dropped from saved workspace tabs on reload.
  • Grid columns no longer animate saved widths into place on first paint.
  • The note panel no longer loses the last keystrokes when the layout closes it.

Removed

  • The centred verse note modal, the note view modal and the floating note preview card.
  • The sidebar's "This passage" cards and the "All notes" scope.
  • The devotional reader's side panel of devotionals.
Release 0.4.0 on GitHub
VERSION 0.3.0

Real Strong's word study, a lighter default theme, infinite scrolling, and a reworked reader chrome.

Added

  • Strong's word study on real data. Two imported datasets replace the mock lexicon: the Open Scriptures Strong's dictionary (5,523 Greek + 8,674 Hebrew entries, CC BY-SA) and STEPBible's tagged original text (TAGNT + TAHOT, 419,809 words across all 66 books, CC BY 4.0). Regenerate with and.
  • Word Study now shows the verse in the original as a tappable strip, the lexical entry (definition, derivation, KJV renderings), a translation breakdown counting how often the word is rendered by each English word, and a concordance filtered by book group then book, paged 25 at a time.
  • Alabaster reading surface — a cool near-white with cards — and it is now the default.
  • Infinite scroll: chapters append as the reader reaches the end, replacing the prev/next chevrons.
  • Copy range in the verse menu: copying opens a / stepper that extends the copy to the verses below, outlining the run in the reader.
  • Mobile Tabs sheet replacing More, listing open workspaces with switch, pin/unpin and close.
  • Accent colour moved into Reader Settings alongside theme and surface.

Changed

  • Reader Settings split into Text / Layout / Theme panes so no pane scrolls, down from 761px of content in a 702px popover.
  • Chapter header rebuilt: title and actions share one baseline, existing notes render as one-line pills, and the testament/group/translation chips are gone — 301px to 85px with notes.
  • Cross-references trail the verse instead of preceding the first word, are lettered across the chapter rather than restarting at on every verse, and entries sharing a topic merge into one letter listing every verse it came from.
  • Lexicon-mode underlines and Strong's-number search now read the tagged corpus, not the ten hand-linked words of the mock.
  • Mobile top bar drops the search icon; Reader Settings and Word Study stay.

Fixed

  • Next/previous chapter navigation lands on the chapter heading. The pane kept its across chapters, and a scroll event during the swap filed the old position under the new chapter, which a later restore then honoured.
  • The chapter title no longer inherits 's 1.75 body leading, which had opened a 66px line box around a single word.
  • Theme card grid sizes to its own container, so the 320px popover no longer renders six columns with truncated labels.
  • Production build. Strong's data is served from rather than imported, after made Rollup parse 39MB of JSON and inline it into the entry chunk. The PWA precache ceiling was raised for the three bundled translations, and Strong's JSON is runtime-cached instead.
  • A verse note with no number renders its icon again ( was reaching a prop).

Removed

  • The mock lexicon —, and the hand-written word links — now that the tagged corpus covers every book.
Release 0.3.0 on GitHub

READ. STUDY. STAND.

See Buckler for yourself.

Open Buckler