Docs

Documentation.

Everything you need to put an app live on Canadian infrastructure — from your first deploy to custom domains, databases, and what to do when a build fails. Can’t find an answer? Write us at hello@canner.ca — a human replies.

Get started

Frameworks & runtimes

Guides

Environment variables & secrets

Set, bulk-import, and mark variables sensitive; how they reach your build and runtime.

Postgres databases

Provision an isolated Postgres database per project — DATABASE_URL is injected automatically.

Passkeys for your app

Add passkey sign-in to your own app without building a user database. Canner Auth holds the credentials; your app verifies a signed token.

Custom domains & DNS

Point your domain at Canner, verify it, and get automatic HTTPS. Includes the www redirect.

Caching

Cache server-rendered responses; purge by tag or path, preview drafts, and stale-while-revalidate. Works with any CMS and a native Astro provider.

Scheduled jobs (cron webhooks)

Run a URL in your app on a cron schedule — no third-party cron service. Retries, timeouts, and run history included.

Scheduled SQL queries

Run SQL on a schedule against your project databases — reference any database you own by name, read and write it, no external ETL. Runs isolated in Montreal.

Data Workshop: columnar analytics

Upload CSV, Parquet, or JSON and query it with standard SQL in milliseconds — plus browse your project Postgres. No egress, data stays in Canada.

Object storage & files

Store and serve files from a private, Canadian-owned bucket per project — from the dashboard, or with your own S3-compatible credentials from your app's own runtime.

Cookieless traffic analytics

Page views, sessions, and referrers for your app — no cookies, no third-party scripts, session identity hashed server-side and processed in Canada.

Reference

Troubleshooting