Set up by Scenario
Answer 4 questions about your application and this page assembles a working Ruby configuration, then lets you adjust it with add-ons. Every question is about your own code — which endpoint to point at, which plugins to load, and which properties to set are outputs, never questions.
Nothing here needs to be remembered. Change a toggle at any point and the configuration below re-assembles; the link at the end restores everything you chose.
How does your app talk to the database?
Answer this first, because it decides whether read routing and connection pooling are configurable at all. The wrapper's plugins behave identically either way; what changes is who owns everything around them.
What does this code do with data?
Answer for one part of your application. If an API and a nightly report job share a database, they may still deserve different configurations, so walk this once for each and treat them separately.
What must keep working?
Pick the highest rung you actually need — each includes the one above it. Reaching higher than you need costs monitoring threads and configuration surface, and sometimes a different database deployment.
Add-ons
Each of these changes a line or two rather than the shape of the configuration, so they are answered here rather than being questions of their own. Toggle them and watch the configuration change.
How the connection authenticates.
Nothing in the wrapper probes host health, so detection is whatever your layer already does. These are the knobs that exist.
How long a pooled connection may live before it is replaced.
Not available with your current answers
The pool holds five connections by default, per process, per role.
Not available with your current answers
Additive, and independent of what you chose for **What must keep working?** — it is a plugin you add to whichever configuration you land on.
Optional. Set this to have the builder emit the matching wrapper_dialect and handle discovery for that deployment. Left unspecified, no dialect is emitted and the wrapper auto-detects at connect time.
Answer the questions above
The configuration appears here once the branching questions are answered.