Skip to main content

Platform Strategy

GospeLib runs on three platforms with a single design system and shared component library (@gospelib/ui). Each platform delivers the same features but with an layout and interaction model optimized for its form factor.

Feature Matrix

FeaturePhoneTabletWeb
Full scripture reader
Interlinear & witness modes
Full gesture suite (5 gestures)Keyboard equivalents
Annotation system
Lexicon bubbles
AI whispers + full assistant
Command palette✅ (⌘+K)
Collections & binders
Come Follow Me schedule
Split pane reader
Persistent context panel
Multi-panel study layout
Full constellation graph viewSimplified✅ (full canvas)
Keyboard navigationN/AOptional✅ Full
Multi-window support

The phone never feels crippled — it has every feature. It presents them one at a time rather than simultaneously.

Phone — Capable Pocket Edition

Default: Bottom Tab Bar (56px tall, 5 tabs)

Reader | Explore | Study | Search | Profile

Alternative: Gesture-Driven — no persistent tab bar, edge swipes for navigation.

Layout

  • Single-column reader fills the entire screen
  • Features surface via bottom sheets, popovers, and overlays
  • Constellation graph available as simplified node view + list fallback
  • Context panel replaces the current view (not alongside it)

Margins

ElementValue
Horizontal margin20px
Top margin28px
Bottom margin32px
Annotation gutter12px (standard) / 56px (study mode)

Tablet — Full Scholarly Experience

The reference platform for serious study. Three-column layout:

┌─────────────┬───────────────────────────────┬──────────────────┐
│ Books Nav │ Scripture Reader │ Context Panel │
│ 220px │ (flexible) │ 360px │
└─────────────┴───────────────────────────────┴──────────────────┘

Default: Collapsible Side Rail — 60px collapsed (icon only) / 220px expanded (icon + label)

Context Panel

The right-side context panel is a persistent scholarly workspace that adapts to the user's current action:

User ActionPanel Content
Word selectedLexicon entry
Verse long-pressedVerse connections
AI invokedStudy Assistant chat
Topic selectedTopic subgraph
Search activeSearch results
Nothing selected"Tap any word or verse to begin exploring"

The panel remembers its last content when switching chapters. History is navigable via back/forward controls.

Margins

ElementValue
Horizontal margin40px
Top margin36px
Bottom margin40px

Web — Power User Workshop

Identical to tablet layout, with additional capabilities:

FeatureDetails
Keyboard shortcutsAll actions have keyboard equivalents
⌘+KUniversal command palette from anywhere
Constellation canvasFull viewport, not constrained to 360px panel
Multi-windowOpen multiple passages in separate browser tabs; state syncs
Print/exportProfessional PDF export with GospeLib typography

Layout

┌──────────────┬────────────────────────────────┬──────────────────────┐
│ Books Panel │ Reader (max-width: 680px) │ Tool Panel │
│ (persistent)│ (centered) │ (collapsible) │
└──────────────┴────────────────────────────────┴──────────────────────┘

Web Margins

ElementValue
Reader max-width680px centered
Horizontal padding48px
Vertical padding40px

Offline Support

The mobile app pre-caches content for full offline reading:

ContentCaching Strategy
Current CFM week readingsAutomatic
Recently opened books (30 days)Automatic
Personal annotationsAlways local, synced to cloud
Full lexicon indexPre-cached (~40MB)

Graceful Degradation

FeatureOffline Behavior
Reading & annotationFully functional
Lexicon lookupFully functional (local index)
AI features"Available when connected" message
Search (semantic)Local index only; API results unavailable
SyncQueued, syncs on reconnection

Users choose their preferred navigation model in Settings → Appearance → Navigation Style:

ModeDefault ForDescription
A: Bottom Tab BarPhone5 tabs, 56px tall, standard safe area inset
B: Gesture-DrivenNo persistent nav, edge swipes, maximum immersion
C: Collapsible Side RailTablet60px collapsed / 220px expanded, left edge
D: Context-AdaptiveNav morphs based on current context (reading → minimal, explore → full graph controls)

Technology

PlatformFrameworkRendering
PhoneExpo 52 / React Native ~0.76Native views
TabletExpo 52 / React Native ~0.76Native views
WebNext.js 15 / React 19React Native Web

Shared components live in @gospelib/ui using React Native primitives, rendered cross-platform via React Native Web.