Developer Adoption Guide
This guide is for developers adding Route Bible support to web apps, Bible sites, and tooling.
If you need builder-specific prefill, QR export, and embed behavior, see QR Builder Guide. If you need a full website badge walkthrough (snippet options + runtime behavior), see Website Badge Guide.
Canonical URL format
Use this URL shape for outbound links:
https://route.bible/<canonical-passage>
Examples:
https://route.bible/jhn.3.16https://route.bible/jhn.3.16-jhn.3.18https://route.bible/psa.23
Canonical passage slugs are lowercase OSIS-like identifiers.
Query parameters
Supported query keys:
translation(normalized to uppercase internally)langappsrcmode(auto,launcher,web)
Examples:
https://route.bible/rom.8.28?translation=KJVhttps://route.bible/mat.5.1-mat.5.12?lang=en&src=study-pagehttps://route.bible/jhn.1.1?mode=web
Resolver behavior
/:passagedefaults to auto behavior./:passage?mode=launcherforces launcher UI./:passage?mode=webforces web reading route./:passage/launcherand/:passage/webare direct explicit routes.
Integration patterns
1) Emit Route Bible links from your passage parser
When your app recognizes a passage reference, emit a canonical Route Bible URL:
const canonical = "JHN.3.16";
const href = `https://route.bible/${encodeURIComponent(canonical.toLowerCase())}`;2) Hand off shared pages to Route Bible
Forward article/page context via /share-target:
https://route.bible/share-target?url=<page-url>&title=<title>&text=<summary>Route Bible will extract a likely passage and redirect to canonical route when found.
3) Add a dynamic badge to passage pages
<div id="route-bible-badge"></div>
<script
async
src="https://route.bible/badge.js"
data-mount="#route-bible-badge"
data-src="your-site"
></script>badge.js auto-routes users through /share-target by default, or to a fixed passage when data-passage is provided. See Website Badge Guide for full behavior details and all supported attributes.
Backward compatibility notes
The router still accepts legacy paths of the form /v1/p/:passage (optional /launcher or /web) and normalizes to the current short route format.
Minimum QA matrix
- iOS Safari + Android Chrome open behavior
- app installed vs not installed
- mode variations (
auto,launcher,web) - translation propagation (
translation=KJV) - share-target extraction from a representative article URL