Commit Graph
50 Commits
Author SHA1 Message Date
Guilherme SouzaandClaude Sonnet 4.6 2133134daa docs: update SDK reference docs from recent SDK changes (#45716)
## Summary

Updates reference docs based on recent **stable** releases across
supabase-js, supabase-flutter, and supabase-py. Only changes that landed
in a stable tag are documented.

## Changes analyzed

| SDK | Repo | Stable tag range | Notes |
|-----|------|-----------------|-------|
| js | supabase/supabase-js | `v2.105.0` → `v2.105.3` | Bug fixes and
type improvements; no doc-worthy API changes |
| dart | supabase/supabase-flutter | → `supabase_flutter-v2.13.0` |
`anonKey` deprecated → `publishableKey` |
| py | supabase/supabase-py | `v2.29.0` → `v2.30.0` | New: `.select()`
chaining on write builders |
| swift | supabase/supabase-swift | `v2.46.0` | Dependency bumps only |
| kt | supabase-community/supabase-kt | `3.6.0` | Test coverage
improvements only |
| csharp | supabase-community/supabase-csharp | `v1.1.2` | No changes |

> **Note**: The JS `storage.from().exists()` breaking behavior change
and `PostgrestError instanceof` fix were intentionally excluded — they
are only in the `v3.0.0-next` pre-release branch, not in any stable
`v2.x` tag.

## Documentation updates

### `apps/docs/spec/supabase_dart_v2.yml`
- Rename `anonKey` parameter → `publishableKey` in
`Supabase.initialize()` to match the deprecation in
[supabase-flutter#1360](https://github.com/supabase/supabase-flutter/pull/1360)
(landed in `supabase_flutter-v2.13.0`)
- Update Flutter example to use `publishableKey:` named argument
- Note that `anonKey` is still accepted but deprecated

### `apps/docs/spec/supabase_py_v2.yml`
- Add `.select()` chaining examples to `insert()`, `update()`,
`upsert()`, and `delete()` write builders, newly supported in
[supabase-py v2.30.0](https://github.com/supabase/supabase-py/pull/1383)
- Add notes to each write method mentioning select chaining capability

---

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **Documentation**
* Dart SDK: Updated client initialization to use `publishableKey`
parameter; deprecated `anonKey` remains supported for backward
compatibility.
* Python SDK: Added examples demonstrating how to chain `.select()` with
write operations (`insert()`, `update()`, `upsert()`, `delete()`) to
retrieve specific columns from modified rows.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 15:12:30 -03:00
Katerina Skroumpelouandcoderabbitai[bot] 89e291adec docs: prefer publishable/secret key naming in SDK specs (#45372)
## Description

Replaces legacy `anon` / `service_role` key references with the new
`publishable` / `secret` naming across SDK spec files under
`apps/docs/spec/`. Mirrors the rename table established by
[supabase-js#2280](https://github.com/supabase/supabase-js/pull/2280),
so the auto-generated reference docs at
supabase.com/docs/reference/{js,dart,kotlin,python,swift} stay
consistent with the SDK source.

## Files changed

| File | Highlights |
| --- | --- |
| `supabase_js_v2.yml` | Rename example vars `anon_key` →
`publishable_key`, `service_role_key` → `secret_key`; admin notes use
`secret`. |
| `supabase_dart_v2.yml` | Rename `anonKey` param → `publishableKey`
(matches the live Flutter SDK — see
[supabase-flutter/supabase.dart#L81](https://github.com/supabase/supabase-flutter/blob/main/packages/supabase_flutter/lib/src/supabase.dart#L81));
update call-site; example var `serviceRoleKey` → `secretKey`; admin
notes use `secret`. |
| `supabase_kt_v2.yml`, `supabase_kt_v3.yml` | Replace
`'publishable-or-anon-key'` placeholders with `'your-publishable-key'`;
admin notes use `secret`; fix `importAuthToken(\"service_role\")` →
`importAuthToken(\"your-secret-key\")` (the Kotlin SDK's
`importAuthToken(accessToken: String, …)` takes a JWT, not a role name).
|
| `supabase_py_v2.yml` | All `service_role` references → `secret`;
example var `service_role_key` → `secret_key`. |
| `supabase_swift_v2.yml` | Replace placeholders with
`'your-publishable-key'`; admin notes use `secret`; example var
`serviceRoleKey` → `secretKey`. |
| `storage_v0_config.yaml` | Rewrite `ANON_KEY` / `SERVICE_KEY` env var
**descriptions** in publishable/secret terms. **Env var names kept** —
see below. |

## Why the storage env var names are unchanged

`storage_v0_config.yaml` documents the env vars used to configure the
storage server (multi-tenant deployments). The `id` and `title` fields
must match the actual env var names the binary reads. The storage server
still reads its config from env vars literally named `ANON_KEY` and
`SERVICE_KEY`:

-
[`storage/src/config.ts#L614`](https://github.com/supabase/storage/blob/master/src/config.ts#L614)
— `getOptionalConfigFromEnv('SERVICE_KEY')`
-
[`storage/src/config.ts#L625`](https://github.com/supabase/storage/blob/master/src/config.ts#L625)
— `getOptionalConfigFromEnv('ANON_KEY')`

There is no `PUBLISHABLE_KEY` / `SECRET_KEY` reader on master. Renaming
the doc IDs would break self-hosted deployments — users following the
docs would set the wrong env var and the storage server would silently
fall back to generating its own JWT. Until the storage server itself
adds publishable/secret env support, only descriptions can be updated.

(Same reasoning for not bumping `storage_v0_config.yaml` →
`storage_v1_config.yaml`: the `_v0_` tracks the storage server's own API
version, paired with `storage_v0_openapi.json` downloaded from
`supabase.github.io/storage/api.json`. The server hasn't shipped a v1
API.)

## What we deliberately did NOT rename

Per the same rules established in supabase-js#2280:

- **JWT role claims** like `role: 'anon'` / `role: 'service_role'` —
these are functional Postgres role names in JWT payloads, not key
labels.
- **Real SDK identifiers** that haven't been renamed in the source (we
only rename in the doc when the underlying SDK rename has shipped). The
Dart `anonKey` rename was safe to apply because the Flutter SDK already
ships `publishableKey` as the preferred named parameter (with `anonKey`
`@Deprecated`).

## Out of scope

- **All `*_v1.yml` SDK spec files** (`supabase_js_v1`,
`supabase_dart_v1`, `supabase_kt_v1`, `supabase_swift_v1`). Older SDK
versions, not worth churning.
- **`cli_v1_commands.yaml`**. This file is auto-generated by the CLI
repo's release workflow
([`cli/tools/bumpdoc/main.go`](https://github.com/supabase/cli/blob/develop/tools/bumpdoc/main.go))
and the example outputs come from
[`cli/docs/templates/examples.yaml`](https://github.com/supabase/cli/blob/develop/docs/templates/examples.yaml)
— embedded in the CLI binary at build time. Any edits we make here would
be clobbered by the next CLI release. The fix needs to land upstream in
the CLI repo (note: the CLI itself already ships publishable/secret
naming in \`supabase status\` output — see
[`cli/internal/status/status.go#L40-L44`](https://github.com/supabase/cli/blob/develop/internal/status/status.go#L40-L44)
— but the doc-generation template is stale).
- **`supabase_csharp_v0.yml` / `supabase_csharp_v1.yml`** — checked,
already neutral. Both files use a generic `SUPABASE_KEY` env var with no
`anon` / `service_role` references.
- **Renaming the legacy Dart `anonKey` parameter itself** — that's an
SDK-side change. The Flutter SDK already exposes `publishableKey` as the
preferred parameter; full removal of `anonKey` will happen in a future
major version per the SDK's own deprecation comment.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Standardized API key naming across SDK docs: use publishable (client)
and secret (server/admin) key terminology
* Updated server-side admin examples and warnings to require secret keys
and emphasize never exposing them in client code
* Unified initialization examples across JavaScript, Dart, Kotlin,
Python, and Swift
* Corrected Storage spec metadata to point to the proper configuration
file
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-05-04 09:36:05 +03:00
Guilherme SouzaandClaude Sonnet 4.6 0882677354 docs: Update SDK reference docs (js 2.105.0, swift 2.45.0, kt 3.6.0, py 2.29.0, dart) (#45294)
## Summary

Updates SDK reference docs based on recent SDK releases, analyzed
2026-04-16 → 2026-04-27.

## Changes by SDK

### supabase-js `2.104.1 → 2.105.0`
- **New:** Passkey/WebAuthn support — `signInWithPasskey()`,
`registerPasskey()`, full `auth.passkey.*` namespace (list, update,
delete, startRegistration, verifyRegistration, startAuthentication,
verifyAuthentication), and `auth.admin.passkey.*` admin methods
- Passkeys are behind an experimental opt-in flag: `createClient(url,
key, { auth: { experimental: { passkey: true } } })`

### supabase-swift `v2.43.1 → v2.45.0`
- **New:** `stripNulls()` on `PostgrestTransformBuilder` — sets `Prefer:
return=stripped-nulls`, omitting null fields from PostgREST responses
(requires PostgREST 11.2.0+)

### supabase-kt `3.5.0 → 3.6.0`
- **New:** `stripNulls()` in `select { }` block — same PostgREST
stripped-nulls behavior as Swift

### supabase-py `v3.0.0a1 → 2.29.0`
- **New param:** `current_password` added to `UserAttributes` in
`update_user()` — used to verify identity when changing password

### supabase-flutter (dart)
- **New option:** `stream()` now supports `channelOptions: const
RealtimeChannelConfig(private: true)` to use a private Realtime channel
— documented in notes

## Files changed
- `apps/docs/spec/supabase_js_v2.yml` — passkey entries
- `apps/docs/spec/supabase_swift_v2.yml` — stripNulls
- `apps/docs/spec/supabase_kt_v3.yml` — stripNulls
- `apps/docs/spec/supabase_py_v2.yml` — current_password param
- `apps/docs/spec/supabase_dart_v2.yml` — stream private channel note
- `apps/docs/spec/common-client-libs-sections.json` — nav entries for
all new JS passkey methods

---

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **New Features**
* Added passkey authentication support with sign-in and registration
capabilities across all SDKs.
* Introduced `stripNulls()` modifier to filter null values from query
responses.
  * Enhanced user update method with password verification field.
  * Documented private Realtime channel configuration option.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 10:53:17 +02:00
Laurence Isla 08e9cdde5e docs: data api docs functions (#44412)
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.

YES

## What kind of change does this PR introduce?

Replaces "stored procedures" with "functions" for everything related to
the Data API.

## Additional context

It's not accurate to call database functions "stored procedures". It may
have been that way before Postgres 11, but now it causes confusion
because PostgREST allows functions and not stored procedures.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Standardized terminology across docs, SDK guides, CLI/config specs,
examples, UI, and config comments to use "database functions" instead of
"stored procedures".
* Updated API docs, CLI/config descriptions, Studio UI labels, help
text, empty-state and navigation copy, RPC documentation, and example
text for consistency.
* Adjusted explanatory text and error/help messages to reflect the
revised terminology.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-21 11:54:27 +10:00
Guilherme SouzaandClaude Sonnet 4.6 296912fffa docs(dart): require onError handler in onAuthStateChange examples (#44946)
## Summary

- Adds a warning note to `onAuthStateChange()` that an `onError` handler
is **required**
- Updates all three Dart code examples (spotlight, specific-event,
unsubscribe) to include `onError`

## Background

Network errors (e.g. a token refresh attempted while the device is
offline) are emitted as stream errors on `onAuthStateChange`. If no
`onError` handler is provided, Dart rethrows them as unhandled zone
exceptions, crashing the app.

This is tracked in supabase/supabase-flutter#1281. The SDK itself
already handles this internally (`supabase_auth.dart` has its own
`onError`), but user-facing code that calls `.listen()` without
`onError` is still vulnerable.

The companion SDK fix (example app + doc comment in
`gotrue_client.dart`) is in a separate PR in
`supabase/supabase-flutter`.

## Test plan

- [ ] Review the rendered diff in the Dart reference docs
(`/docs/reference/dart/auth-onauthstatechange`)
- [ ] Confirm all three code examples now show `onError`
- [ ] Confirm the new note is visible in the Notes section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Clarified auth-state change docs to require explicit error handling in
listeners and updated all examples to show an error callback to avoid
unhandled exceptions.
* Updated the documented list of auth event names to the new set
(including initialSession and mfaChallengeVerified) and adjusted
examples accordingly.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 08:01:30 -03:00
61578be9b3 docs: update SDK reference docs and guides from recent SDK changes (#44629)
## Summary

Updates documentation based on SDK changes from 2026-02-16 to 2026-04-07
across all Supabase client SDKs.

### SDK changes analyzed

| SDK | Repository | Commits | Latest Tag |
|-----|-----------|---------|------------|
| JS | supabase/supabase-js | 78 | v2.104.0-canary.0 |
| Dart | supabase/supabase-flutter | 17 | - |
| Python | supabase/supabase-py | 11 | v2.28.3 |
| Swift | supabase/supabase-swift | 13 | v2.43.0 |
| Kotlin | supabase-community/supabase-kt | ~40 | 3.5.0 |
| C# | supabase-community/supabase-csharp | 0 (no changes) | v1.1.2 |

### Documentation updates

**Spec files:**
- **JS** (`supabase_js_v2.yml`): Added custom OIDC/OAuth provider admin
CRUD method refs (`createProvider`, `listProviders`, `getProvider`,
`updateProvider`, `deleteProvider`)
- **Dart** (`supabase_dart_v2.yml`): Added custom OAuthProvider class
example, `accessToken` param for `setSession()`, `useNewHostname`
storage option
- **Swift** (`supabase_swift_v2.yml`): Added PostgREST automatic retries
initialization example, realtime callback registration timing note
- **Kotlin** (`supabase_kt_v3.yml`): Added streaming edge functions
(SSE) example via `collectAsFlow`, `currentPassword` param for
`updateUser`, `urlLengthLimit`/`timeout` PostgREST config options

**Guides:**
- `api/automatic-retries-in-supabase-js.mdx`: Added built-in PostgREST
retry documentation (enabled by default since v2.102.0), restructured
guide to show native retries first, `fetch-retry` as advanced option
- `auth/passwords.mdx`: Added `currentPassword` verification section
with JS and Kotlin examples

## Test plan

- [ ] Verify YAML spec files parse correctly (validated locally with
Python yaml parser)
- [ ] Check that `$ref` entries for JS custom provider admin methods
resolve correctly against tsdoc
- [ ] Review rendered documentation for all updated spec sections
- [ ] Verify MDX guide pages render correctly with new Tabs/TabPanel
sections

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Documentation**
* Documented built-in automatic retries for PostgREST with exponential
backoff, retryable status codes, and option to disable per client
  * Retained prior fetch-retry guidance as a custom alternative
* Added guidance for verifying current password (version notes) and
admin APIs for custom OAuth providers
* Added PostgREST config options, streaming edge-function docs, and
clarified realtime subscription callback ordering
  * Allowed “retryable” in spelling rules
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
2026-04-13 13:38:46 +00:00
Danny White 19cf4bb4bf feat(studio): consolidate settings phase 2 (#37612)
* new slugs

* remove symlinks

* rabbit
2026-01-26 15:41:05 +08:00
Peyton NowlinandChris Chinchilla bf250547f6 fix: correct typos across codebase (#41038)
- Fix 'occured' -> 'occurred' in ErrorDetailsButton.tsx

- Fix 'requried' -> 'required' in storage bucket mutations

- Fix 'reponse' -> 'response' in API spec files

- Fix 'localy' -> 'locally' and 'depoy' -> 'deploy' in README

Co-authored-by: Chris Chinchilla <chris.ward@supabase.io>
2026-01-15 05:15:18 +00:00
Katerina Skroumpelouandsupabase-releaser[bot] 2e64be1463 docs: vector bucket and vector analytics js docs (#40467)
* docs: update js client libraries (2.83.0)

* docs: vector buckets and analytics js docs

---------

Co-authored-by: supabase-releaser[bot] <223506987+supabase-releaser[bot]@users.noreply.github.com>
2025-11-18 17:42:08 +02:00
Timothy Lim f68bf01f3b fix(docs): Clarify auth.admin.generateLink does not send emails or OTPs (#39665) 2025-11-04 19:42:08 +08:00
Guilherme Souza ec78a8d3cf docs: add Flutter documentation for maxAffected and linkIdentityWithIdToken (#39132) 2025-10-01 05:08:26 -03:00
Katerina SkroumpelouandCharis Lam a5fc052704 docs: update js client libs docs (#38595)
* docs: update js client libs docs

* chore: update test snapshot for specs

* ci(docs): run tests on spec changes

---------

Co-authored-by: Charis Lam <26616127+charislam@users.noreply.github.com>
2025-09-11 12:14:27 +01:00
Chris StocktonandChris Stockton 6a777e1fae fix: small typo in identites -> identities (#38292)
Co-authored-by: Chris Stockton <chris.stockton@supabase.io>
2025-09-03 15:28:47 -07:00
6855e027cd docs(auth): add Flutter signInWithIdToken example for Facebook auth (#38265)
* docs(auth): add Flutter signInWithIdToken example for Facebook auth

Add documentation section showing how to integrate Facebook authentication
in Flutter using the signInWithIdToken method with the Facebook SDK.
Includes dependency setup, basic implementation, and error handling.

* fix style

* docs(dart): add Facebook signInWithIdToken example

Add native Facebook sign-in example to the Dart client reference
documentation. Includes integration with flutter_facebook_auth package
and proper error handling for the signInWithIdToken method.

* docs(dart): simplify provider parameter description

Remove specific provider enumeration from parameter description
to keep it more generic and maintainable.

* Add signInWithIdToken to spelling allow list

* Update auth-facebook.mdx

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

* Update apps/docs/content/guides/auth/social-login/auth-facebook.mdx

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update apps/docs/content/guides/auth/social-login/auth-facebook.mdx

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-28 08:16:20 -03:00
Stojan DimitrovskiandChris Chinchilla 93ba2a312c docs: indicate publishable key instead of anon in many examples (#37411)
* docs: indicate publishable key instead of anon in many examples

* replace your-anon-key to string indicating publishable or anon

* fix your_...

* apply suggestion from @ChrisChinchilla

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

* Update keys in code examples

* Prettier fix

* Update apps/docs/content/guides/functions/schedule-functions.mdx

---------

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
2025-08-18 13:47:48 +02:00
Guilherme SouzaandChris Chinchilla b6b906cff4 docs: add flutter phone factor reference doc and example (#37828)
* docs: add flutter phone factor reference doc and example

* Update apps/docs/spec/supabase_dart_v2.yml

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

* Update apps/docs/spec/supabase_js_v2.yml

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

* Update apps/docs/spec/supabase_dart_v2.yml

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

* Update apps/docs/spec/supabase_dart_v2.yml

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>

---------

Co-authored-by: Chris Chinchilla <chris@chrischinchilla.com>
2025-08-14 15:03:01 -03:00
Andrew Smith 3e8152cff6 docs(flutter): update the verifyOtp to mention deprecated types (#36393) 2025-08-12 18:11:12 +00:00
Chemsdine 9ec32d68df Changed -an List- to -a List- (#36856)
* Changed -an List- to -a List-

* Changed an List to an array
2025-07-04 15:19:29 +00:00
Hieu Vu 60d9202bdd Docs: Improve chip text in Dart and Kotlin examples (#35740)
Improve chip text in dart and kotlin examples
2025-05-20 16:02:59 +00:00
Ofir Levitan 2f475ae9f9 remove dart invoke example that's not relevant (#35672)
removed example
2025-05-15 15:09:04 +00:00
Charis 80ee4c9ab0 fix: examples (#33276) 2025-02-03 14:14:08 -05:00
Charis 93885b090f chore: examples (#33183) 2025-01-30 13:08:46 -05:00
Bobbie Soedirgo 1f9af325c2 docs: add example to order parent table by referenced table (#32920)
* docs: add example to order parent table by referenced table

* docs: more ordering by referenced table examples
2025-01-21 15:59:50 +08:00
Kang Ming b842621f3a docs: update oauth guides (#30411) 2024-11-11 19:46:35 +08:00
Ivan Vasilov b0cf2bf6fa chore: Move parser package to packages folder (#29522)
* Move the spec/parser package into packages folder.

* Fix the spec generation with the new paths.

* Remove the spec folder from prettierignore.

* Run prettier on the spec folder (without regenerating, that's should be done by the product teams).
2024-09-25 23:45:14 +02:00
Tyler fe25383047 docs: Add redirectTo and authScreenLaunchMode parameter to signInWith OAuth calls in Flutter docs (#29407)
docs: add redirectTo and authScreenLaunchMode parameter to signInWithOAuth calls in Flutter docs
2024-09-26 00:14:40 +09:00
Tyler 45246ab67e docs: fix Flutter reference docs auth.resend code example (#28892)
docs: fix resend docs for Flutter
2024-09-04 16:13:35 +09:00
Tyler b4e2b156af docs: fix a mismatch between the sample code and sample response (#28466)
* docs: fix a mis-match between the sample code and sample response

* fix onAuthStateChange unsubscribe code

* Revert "fix onAuthStateChange unsubscribe code"

This reverts commit 8d438ae145.

* fix code sample for unsubscribing in Flutter
2024-08-15 14:40:33 +08:00
Charis fc164b5d07 Refactor/app router refs (#28095)
Migrates client SDK References to App Router. (Management and CLI API references aren't migrated yet, nor are self-hosting config references.)

Some notes:

Big changes to the way crawler pages are built and individual section URLs (e.g., javascript/select) are served. All of these used to be SSG-generated pages, but the number of heavy pages was just too much to handle -- slow as molasses and my laptop sounded like it was taking off, and CI sometimes refuses to build it all at all.

Tried various tricks with caching and pre-generating data but no dice.

So I changed to only building one copy of each SDK+version page, then serving the sub-URLs through a response rewrite. That's for the actual user-visible pages.

For the bot pages, each sub-URL needs to be its own page, but prebuilding it doesn't work, and rendering on demand from React components is too slow (looking for super-fast response here for SEO). Instead I changed to using an API route that serves very minimal, hand-crafted HTML. It looks ugly, but it's purely for the search bots.

You can test what bots see by running curl --user-agent "Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" <URL_OF_PAGE>

Also added some smoke tests to run against prod for the crawler routes, since we don't keep an eye on those regularly, and Vercel config changes could surprise-break them. Tested the meta images on Open Graph and all seems to work fine.

With this approach, full production builds are really fast: ~5 minutes

Starts using the new type spec handling, which is better at finding params automatically, so I could remove some of the manually written ones from the spec files.
2024-08-13 16:12:59 -04:00
Charis f4779d4844 refactor: migrate guides to app router (#23101)
Migrate guides to App Router.
2024-07-03 10:25:06 -04:00
Nil Gàllego 5336920c64 docs: Add crypto package for Apple sign-in functionality (#27664) 2024-07-02 03:46:03 +00:00
Tyler e402fb90ad docs: Add missing sample responses to the Flutter reference docs (#26935)
* reformat the existing responses

* change the format of the code block to json

* Add responses for the select query

* docs: Adds response and data to basic postgrest methods

* docs: Add sample response to all postgrest methods

* docs: Add MFA responses

* Add responses for auth admin methods
2024-06-05 00:59:07 +09:00
Tyler 3deeeb4988 docs: Add response and params to the storage reference docs for Flutter (#26815)
* docs: Add response and params to the storage reference docs for Flutter

* update storage response language to dart

* revert the sample response type to json
2024-05-30 03:26:08 +09:00
ec86bbc4fe feat: new auth ia (#22812)
Co-authored-by: Kang Ming <kang.ming1996@gmail.com>
Co-authored-by: Joel Lee <lee.yi.jie.joel@gmail.com>
2024-05-07 20:15:06 +00:00
Tyler 52c80e6c66 docs: Add parameters for Flutter reference docs on Auth and Edge functions method. (#22331)
Add parameters for the remaining auth methods and functions
2024-04-12 10:02:39 +09:00
TylerandCharis 31a8add418 docs: add anonymous sign-in docs for Flutter (#22596)
* docs: add anonymous sign-in docs for Flutter

* minor code fix

* Update apps/docs/content/guides/auth/auth-anonymous.mdx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2024-04-09 22:47:17 +09:00
hawkcookieandCharis 684c478901 docs: Fix broken SITE_URL link (#21896)
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2024-03-19 08:09:41 +00:00
Tyler d8394689ca docs: Add params to Flutter docs for filters, modifiers, and add a few missing modifiers. (#21869)
* Add all init options

* Add params to CRUD methods

* Add params to basic auth methods

* fix typo

* Update filter params

* Add params to filters and modifiers
2024-03-12 13:46:35 +09:00
Tyler 14ea8512e7 docs: Add parameters to basic CRUD and auth methods for Flutter (#21796)
* Add all init options

* Add params to CRUD methods

* Add params to basic auth methods

* fix typo
2024-03-07 10:01:51 +09:00
Tyler 64863f407f docs: Add params option to reference docs so that non-js client libs can add parameters (#21708)
* Adds params option for reference docs

* move params below description

* Apply suggestions from code review

* Update apps/docs/spec/supabase_dart_v2.yml
2024-03-05 15:06:07 +09:00
Tyler af9306bfea docs: Add missing descriptions for Flutter docs (#21339)
Add missing descriptions for Flutter docs
2024-02-20 18:53:34 -05:00
Tyler 43a1405d37 docs: Add missing code in the apple sign in example for Flutter reference docs. (#21362)
Add missing code in the apple sign in example
2024-02-20 18:29:37 -05:00
Charis be699817fb fix: mismatched code example in dart spec (#21267) 2024-02-15 09:42:40 +08:00
6e25cd693a Fixed signInWithOAuth example documentation (#21198)
* Fix .env.example STUDIO Variables

* Fixed signInWithOAuth example documentation

* Fixed signInWithOAuth example documentation

---------

Co-authored-by: riccardocucia <riccardocucia@gmial.com>
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2024-02-14 03:29:23 +00:00
Tyler 7393769be5 docs: Updated Flutter reference docs for filters to be more aligned with js docs (#21036)
* Updated Flutter docs to have better contains and contained by example

* Add data source to Flutter docs

* Tidy up the using filters section

* fix: show the data directly in sample response
2024-02-07 01:28:25 +00:00
Imad Atyat-AllahandCharis 7b92ef9f2e fix: typo from "resetPassswordForEmail" to "resetPasswordForEmail" (#20713)
Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2024-01-25 15:56:00 +00:00
Kamil Bażanow 616a6981ba docs(Auth): update signup behavior for existing confirmed user (#20638) 2024-01-22 17:47:53 +00:00
TylerandCharis 90e3289c6b docs: Add signInWithSSO to Flutter docs. (#20511)
* Add sso sign in to Flutter docs

* docs: Add Flutter SSO method

* Add Dart code sample on SSO guide

* Update apps/docs/spec/supabase_dart_v2.yml

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2024-01-19 07:52:53 +09:00
Tyler 81d5b97799 docs: Add setSession() and refreshSession() to Flutter docs (#20424) 2024-01-16 09:34:59 +09:00
Kevin Grüneberg 129b3d927a chore: move specs to docs folder (#20136) 2024-01-03 18:54:23 +01:00