Short map of published guides. Start with the Golden path for a linear first-hour setup, or JTBD and user flows if you want the mental model first.

For the current support/readiness contract, defended runtime posture, and maintainer proof-command split, use Support and compatibility.

Crash Course

Scrypath is easiest to think about as four layers:

The intended app boundary is a Phoenix context that owns the search flow, with controllers and LiveView as thin callers.

GuidePurpose
JTBD and user flowsCanonical mental model: what jobs Scrypath serves, the main user flows, and what "success" honestly means in each one.
Common mistakesEvidence-led pitfalls (symptom → wrong model → fix) with links back to canonical guides.
Getting startedMental model: what you configure, where sync and search live in the app.
Golden pathChecklist from mix.exs through first Scrypath.search/3 with inline sync.
Support and compatibilitySingle current support/readiness authority: runtime posture, defended Phoenix + Meilisearch path, proof commands, and clone-vs-Hex boundary.
Outside-Adopter IntakeSingle canonical outside-adopter intake authority for gathering evidence on failed runs or outside integrations.
Request-edge searchCanonical v1.21 request-edge contract: browser params, Scrypath.QueryParams, optional Scrypath.Phoenix, and context-owned Scrypath.search/3.
Composing real-app searchCanonical v1.22 composition and metadata guide: defaults, fixed, host-owned rendering, and compose_many/2 lowering.
Related data and reindexingCanonical guidance for associated-data fan-out, when direct sync is enough, and when to escalate to backfill or reindex.
Meilisearch operationsWhere Meilisearch runs, provisioning sketches, recovery paths, and footguns—through a Scrypath lens.
Phoenix walkthroughEnd-to-end Phoenix adoption: schema → context → controller → LiveView.
Phoenix contextsContext-owned search and sync boundaries.
Phoenix controllers and JSONJSON APIs and thin controller callers.
Phoenix LiveViewLiveView calling Scrypath.search/3 and related patterns.
Faceted search with Phoenix LiveViewFacets, filters, and catalog-style UIs.
Multi-index searchFederated / multi-index queries.
Sync modes and visibilityInline, Oban, and manual sync semantics and what “done” means.
Operator Mix tasksCLI entrypoints over Scrypath.* operator APIs.
Drift recoveryOperator path when DB and search disagree or work is stuck.
Relevance tuningMeilisearch settings, verification, and tuning from schema declarations.
Per-query tuning pipelineRequest-time Meilisearch search parameters vs index-time settings — canonical merge and mapping spec.

The runnable Phoenix example (Postgres + Meilisearch + Oban) lives under examples/phoenix_meilisearch/.

  1. Golden path
  2. JTBD and user flows
  3. Request-edge search
  4. Composing real-app search
  5. Phoenix walkthrough
  6. Sync modes and visibility
  7. Related data and reindexing
  8. Drift recovery