manifest.plugins list.
File storage
File storage is a built-in subsystem selected byPYLON_FILES_PROVIDER — not a plugin entry.
PYLON_FILES_PROVIDER=s3 without the bucket or keys) — it never silently degrades to local disk. local, stack0, and s3 are the providers that ship today.
The s3 backend uses SigV4 presigned URLs for every operation: clients PUT/GET bytes straight to the bucket (never through pylon’s memory), and — for a private bucket — pylon tracks per-file ownership so GET /api/files/<id> enforces the same owner check as local disk before 302-redirecting to a short-lived presigned URL. Set PYLON_S3_PUBLIC_URL to serve from a public bucket/CDN instead. Credentials come from env only (no automatic IAM-role discovery); pass PYLON_S3_SESSION_TOKEN alongside temporary credentials.
Uploads use a 3-step direct-to-storage flow so large files never transit the server’s memory:
stored.url (display) and stored.id (so you can DELETE /api/files/<id> later).
GET /api/files/<id>serves the bytes. For CDN backends pylon 302-redirects to the CDN URL; for local it streams from disk.DELETE /api/files/<id>removes the asset. Owner-gated: only the user who confirmed the upload (or an admin).
The multipart
POST /api/files/upload was removed in 0.3.91 — it now returns 410 Gone. Use the 3-step flow above.PYLON_EMAIL_PROVIDER — not a plugin entry.
ctx.email:
PYLON_AUTH_EMAIL_*, falling back to PYLON_EMAIL_*. This keeps a shared platform auth key out of reach of app code. See Auth → Email verification.
Stripe billing
Billing is the installable @pylonsync/stripe package — plans, checkout, billing portal, signature-verified webhook, and a subscription entity. Full config, hooks, and the webhook endpoint are on its page.Outbound webhooks
Firing webhooks at your customers’ endpoints is the installable @pylonsync/webhooks package — Svix-compatible HMAC signatures, an exponential-backoff retry schedule, secret rotation, and a delivery-audit entity. See its page.Feature flags
Runtime feature flags are the installable @pylonsync/feature-flags package — local-eval boolean + multivariate flags, percentage rollouts, targeting predicates. See its page.Audit log
Auditing is a built-in framework feature, not a plugin:/api/auth/audit and /api/auth/audit/tenant routes expose the log. Sensitive auth events are recorded automatically.
Caching
Pylon keeps an in-process cache that backs SSR / ISR response caching. It’s internal to the runtime today — there is no user-facingctx.cache API. For app-level memoization, cache inside a server function’s own logic or use an external store you call from a function.