Built-in services
Jadpo gives your app some common backend features itself, so you don't
install a library or write your own. Each is part of Jadpo's runtime and runs
inside your app's process, never as a separate container. Some reach an outside
service, such as a mail provider, through a connection you declare in
app.jadpo. Each has one page: what it's for and how to use it, then its exact
rules last.
How packages, connections, capabilities and services fit together
says how the pieces relate.
A feature is built in only when the compiler gains something by knowing about it: a mistake becomes a compile error, a test or a report is generated, policy or erasure reaches it, or the runtime does the work with nothing for you to write. Saving a library install isn't enough. What isn't built in says why each service is here, and where you set it up.
| Service | State | What's missing |
|---|---|---|
| Email Emails as typed values: templates the compiler checks, sent after your action commits, caught in tests and in a dev inbox. | built | |
| Files A | partly | Uploads, downloads, the S3 driver and jadpo files |
| Feature flags A feature flag lets you ship code switched off, then turn it on for some users, a share of users, or everyone, without a deploy. | partly | Turning a flag on for a named tenant; erasing a person from the flag tables |
| Rate limits A rate limit caps how many requests a caller may make in a period. | partly | The Redis store; turning a limit off |
| Search Give an entity a | partly | Outside search engines, jadpo search reindex and sensitive fields |
| Audit trail An entity's history of changes: who made each, when, and what it changed, kept when you ask for it. | partly | Personal fields in a history, and more on its page; publishing |
| AI Your app can ask a language model for an answer, a stream of text or an embedding (a list of numbers that stands for a text's meaning). | partly | keep_content:, embed: batches below 100 and jadpo call |
| Monitoring A threshold says when something your app does is too slow, too frequent or failing too often, such as a route's p95 duration. | partly | Telemetry, recording the path each request takes, and jadpo traces, metrics, logs and path |
| Caches Copies of records and query results kept in Redis, so busy pages read them quickly. | not built | All of it |
| Documents A document is something your app renders for people to keep, such as an invoice as a PDF. | not built | All of it |
| Bot protection Bot protection stops scripts from using a public form, such as a sign-up or a demo request. | not built | All of it |
| Outgoing webhooks Outgoing webhooks let your app's customers receive its events at an address of their own. | not built | All of it |
| What isn't built in Some features other frameworks offer aren't part of Jadpo, because the compiler gains little by knowing about them. | no status |
Each row's status comes from What is built.
Markdown for agents: /docs/built-in-services.md.Built from Jadpo main at aee2e8f.