Projects BibleWeb Themes & Parables Multi-gospel parable occurrences
Planned

Multi-gospel parable occurrences

Area: Themes & Parables Milestone: v3

Context

Problem: Many parables appear in multiple Gospels with different wording and details. Currently, the parable detail page groups verses by Gospel, but doesn't clearly show which Gospel contains which version of the parable or how the accounts differ.

Solution: Display each Gospel's version of a parable as a distinct, collapsible section with its verse range. This makes it clear which Gospels contain the parable and lets users compare accounts.

Not included: Word-level diff or highlighting of differences between Gospel accounts (that's the word-match highlighting feature in Parallel Gospels).

Functional

On a parable detail page, each Gospel's version appears as a separate collapsible section showing the book name, chapter range, and full verse text.

Expected user flow:

  1. User opens a parable that appears in multiple Gospels (e.g., "The Sower")
  2. Sees collapsible sections: "Matthew 13:1-23", "Mark 4:1-20", "Luke 8:4-15"
  3. Can expand/collapse each Gospel's version independently
  4. Each section shows the full verse text for that Gospel's account

Data already exists:

  • parables table with parable metadata
  • parable_occurrences table linking parables to specific Gospel appearances
  • parable_verses table with verse ranges per occurrence

UX & Design

Collapsible sections per Gospel:

  • Header: "Matthew 13:1-23" with expand/collapse chevron
  • Content: full verse text for that range
  • All sections expanded by default

TODO: Reference BibleGame ParablesView.cs for the original layout

Technical

DB tables:

  • parables — id, name, description, description_nl
  • parable_occurrences — links parables to Gospel accounts
  • parable_verses — verse ranges per occurrence

Implementation:

  • Modify parables detail page to group by occurrence rather than by raw bookId
  • Show each occurrence as a labeled, collapsible section

Files:

  • apps/web/src/routes/(app)/parables/[id]/+page.svelte (modify)
  • apps/web/src/lib/server/queries/parables.ts (modify — query by occurrence)

Status

Current: PLANNED Milestone: v3 Priority: Medium — improves parable study experience

History:

  • BibleGame had collapsible Gospel sections per parable in ParablesView.cs
  • DB tables exist but aren't fully utilized by the web UI yet

Dependencies:

  • Requires: parables browser (DONE), parable_occurrences data (DONE)