Problem: BibleWeb must work well on phones and tablets, not just desktop browsers. Bible reading happens on the go — commutes, church, personal devotions. A desktop-only layout would exclude a large portion of users.
Solution: A fully responsive layout that adapts from desktop (sidebar + content) to mobile (full-width content with collapsible hamburger menu). All features work on touch devices.
Not included: A native mobile app or PWA-specific features (offline mode, push notifications). This is responsive web design only.
The app layout adapts seamlessly between desktop and mobile screen sizes.
Desktop (>768px):
Mobile (<768px):
User flow (mobile):
Edge cases:
Breakpoints:
Sidebar: mobileOpen state controls visibility. Hamburger button toggles. On desktop, always visible.
Touch targets: Minimum 44px height for interactive elements on mobile.
Layout: (app)/+layout.svelte — <div class="h-screen flex"> wrapping Sidebar + <main>
Sidebar (Sidebar.svelte):
mobileOpen reactive stateResponsive components:
ParallelVerseView.svelte — CSS Grid with responsive grid-template-columns1fr below 640px)Files:
apps/web/src/routes/(app)/+layout.svelte — main layoutapps/web/src/lib/components/layout/Sidebar.svelte — responsive sidebarCurrent: DONE Milestone: Foundation (pre-v1) Priority: Core — essential for mobile users
History:
Dependencies: