Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
131 commits
Select commit Hold shift + click to select a range
8c867d8
realtime: Add footer channel to www application (#36707)
filipecabaco Jul 1, 2025
a259c0b
chore: add e2e test for sql editor snippets (#36293)
Michaelomh Jul 1, 2025
08a7b75
chore: add signed out redirect timeout (#35546)
alaister Jul 1, 2025
972b477
docs: privatelink feature (#36760)
doublethink Jul 1, 2025
e2f6f72
add Brent Newson to humans.txt (#36815)
bn-nz Jul 1, 2025
712ccd9
chore: update self-hosted image versions (#36453)
kiwicopple Jul 2, 2025
3f3ed43
Remove enable branching modal (#36458)
SaxonF Jul 2, 2025
9f75d02
change bedrock model (#36830)
SaxonF Jul 2, 2025
130dcb4
Filter out [t] is not a function (#36831)
saltcod Jul 2, 2025
3d88e1a
Edge Function Report (#36763)
jordienr Jul 2, 2025
a2aa492
fix: switch default staging / local provider (#36824)
kangmingtay Jul 2, 2025
feb5a57
Update with-ionic-react.mdx to run in current verison (#36833)
ConnorMolz Jul 2, 2025
ea91bf4
Distributes bedrock requests evenly across regions (#36837)
gregnr Jul 2, 2025
39c2710
docs: svelte kit quickstart update (#35265)
Hallidayo Jul 2, 2025
bf9a779
docs: pgjwt admonition (#36615)
Hallidayo Jul 2, 2025
1ef8985
blog: storage fix (#36609)
Hallidayo Jul 2, 2025
1aeb6ea
fix table editor permissions state (#36802)
saltcod Jul 2, 2025
66c6ca8
chore: update regional invocations guide (#36843)
laktek Jul 2, 2025
121f131
backup-restore.mdx: Fix storage migration (#36842)
tvogel Jul 2, 2025
8a4bca3
feat: add documentation and UI integration for Before User Created ho…
cstockton Jul 2, 2025
e0629c4
rm e2e gh action (#36846)
jordienr Jul 2, 2025
84c4bbb
Update installation links for VS Code and VS Code Insiders in MCP gui…
burkeholland Jul 2, 2025
b819304
chore: update cli reference doc (#36790)
kiwicopple Jul 2, 2025
f6a8e36
docs: fix documentation for seed file (#36805)
Magnuti Jul 2, 2025
ea0d515
remove results from message (#36851)
SaxonF Jul 3, 2025
ad22fa3
block branch free plan (#36849)
SaxonF Jul 3, 2025
4e17ec6
feat: improved jwt signing key rotation dialog (#36781)
hf Jul 3, 2025
46d3de7
fix(branching): allow gitless branches to be set as peristent (#36794)
avallete Jul 3, 2025
c54842b
feat: jwt signing key dialog supports bring your own key (#36730)
hf Jul 3, 2025
8c41ec5
feat: reports storage (#36442)
fsansalvadore Jul 3, 2025
e2fecc0
chore(docs linter): bump version (#36715)
charislam Jul 3, 2025
715b83b
chore: realtime reports (#36797)
fsansalvadore Jul 3, 2025
801c2c7
fix(docs): studio feature stages update (#36864)
charislam Jul 3, 2025
f528786
doc typo nextjs.config.js -> next.config.js (#36869)
vicapow Jul 3, 2025
d3ef8bf
docs: update auth email template variables (#36865)
ssudaraka Jul 4, 2025
ea38c6d
Review and merge branch (#36795)
SaxonF Jul 4, 2025
a88e89e
feat: Add support for `import foreign schema` for wrappers (#36827)
ivasilov Jul 4, 2025
2646288
feat: use enablePgReplicate feature flag (#36876)
imor Jul 4, 2025
2eeed2e
feat: Add Iceberg FDW (#36828)
ivasilov Jul 4, 2025
309088b
feat: add billing information to the leave org modal (#36868)
ignaciodob Jul 4, 2025
d3ffbe0
[bot] fix lint errors (#36872)
github-actions[bot] Jul 4, 2025
9ec32d6
Changed -an List- to -a List- (#36856)
Chemsdine223 Jul 4, 2025
a3c77cd
fix(docs): feedback form note (#36835)
charislam Jul 4, 2025
4d15119
opt in tags (#36885)
saltcod Jul 4, 2025
a73df1f
Change path to pathname in storage unified logs query (#36785)
joshenlim Jul 4, 2025
f107437
docs(realtime error codes) (#36891)
charislam Jul 4, 2025
677e6a8
o11y(docs): more descriptive errors (#36892)
charislam Jul 4, 2025
1d3b0ba
Rename api to api gateway (#36886)
saltcod Jul 5, 2025
c976afa
fix: remove apac bedrock region and add us region (#36881)
delgado3d Jul 7, 2025
8708eff
add Danny White to humans.txt (#36911)
dnywh Jul 7, 2025
d959b10
realtime: Limit access to settings based on project (#36860)
filipecabaco Jul 7, 2025
5d794b0
feat(supabase): enable github login (#36927)
charislam Jul 7, 2025
5f77dde
Feat/terms update (#36912)
pamelachia Jul 7, 2025
94c45c2
AI UI refine and renaming (#36819)
SaxonF Jul 8, 2025
182986b
Assistant error state (#36907)
SaxonF Jul 8, 2025
c508348
fix db charts (#36803)
fsansalvadore Jul 8, 2025
4eeac16
feat: final ui/ux updates for jwt signing keys (#36889)
hf Jul 8, 2025
df80b55
hide db selector in reports pages that dont need it (#36953)
jordienr Jul 8, 2025
1e3b506
Feat/unified logs inspection panel (#36895)
MildTomato Jul 8, 2025
a77d40e
feat(replication): Update the API calls for replication endpoints (#3…
iambriccardo Jul 8, 2025
2afa8ba
lw15 ticketing (#36916)
fsansalvadore Jul 8, 2025
a197694
feat: update docs, ui-library to use `supabase.auth.getClaims()` (#36…
hf Jul 8, 2025
3d699e7
add Sean Oliver to humans.txt as part of onboarding (#36964)
seanoliver Jul 8, 2025
56211b5
Update monthly-active-users-sso.mdx (#36082)
Tucker-Eric Jul 8, 2025
8756deb
chore: external svg scripts (#36905)
doublethink Jul 9, 2025
1139d71
fix: pre auth terms (#36962)
pamelachia Jul 9, 2025
f1c3e7f
docs: mcp security best practices (#36966)
gregnr Jul 9, 2025
02a6392
Feat/unified logs live filter enums (#36913)
MildTomato Jul 9, 2025
b2192f3
Fix unnest on possibly null arrays in service flow queries (#36969)
MildTomato Jul 9, 2025
c0b3a86
chore: add violation type to restriction banner (#36970)
pamelachia Jul 9, 2025
b491735
Updates Assistant snippet handling (#36948)
SaxonF Jul 9, 2025
b054576
Add review requested at (#36877)
SaxonF Jul 9, 2025
83b5664
fix: show run logs for gitless branches (#36949)
sweatybridge Jul 9, 2025
6e84bd1
docs: add Iceberg and DuckDB FDW docs (#36965)
burmecia Jul 9, 2025
ec1c534
New GuideTemplate with composable components (#36893)
tomaspozo Jul 9, 2025
216b235
Review branch diff with AI (#36915)
SaxonF Jul 9, 2025
0419d45
Add search docs, advisors, and custom logging tools (#36852)
SaxonF Jul 9, 2025
a046c5f
Create merge request (#37009)
SaxonF Jul 10, 2025
76a8cc4
Add missing permissions text for AI opt in modal (#36997)
joshenlim Jul 10, 2025
e3125e5
Limit tools based on extensions (#37006)
SaxonF Jul 10, 2025
5662f19
Add migration status to branch (#37010)
SaxonF Jul 10, 2025
5f95cd4
lw: detect gh metadata info update (#36977)
fsansalvadore Jul 10, 2025
620805a
chore/unified-logs-fixes-03 (#36725)
joshenlim Jul 10, 2025
a78026d
Chore/uniform reports daterange picker (#36989)
fsansalvadore Jul 10, 2025
80fc25e
Shared Responsibility Remove OpenAI Section (#36996)
ekhar Jul 10, 2025
6504a84
chore: enable prettier cache, speeds up subsequent runs ~6.5x (#37005)
thebengeu Jul 10, 2025
53cd3e4
Merge complete loop (#37018)
SaxonF Jul 10, 2025
302d15b
format data to ms in execution time - edge fn report (#36836)
jordienr Jul 10, 2025
ee843e1
format edgefn report exec time chart (#36976)
jordienr Jul 10, 2025
f7c43fb
fix: Updates to the create Iceberg FDW sheet (#36918)
ivasilov Jul 10, 2025
8436b31
ref: Allow for Vercel-managed projects removal (#37013)
kamilogorek Jul 10, 2025
a26c012
Update Edge Functions docs (#36798)
lydiahallie Jul 10, 2025
298bcc5
docs(python): add params to the update_user method (#36871)
silentworks Jul 10, 2025
3cf6a2d
feat: add us-west-2 for bedrock regions (#37022)
delgado3d Jul 10, 2025
fd67066
Context reduction (#37032)
SaxonF Jul 11, 2025
39436de
chore: add waiver of withdrawal (#37038)
pamelachia Jul 11, 2025
e7c3cd4
fix: remove redundant feature preview click (#37019)
pamelachia Jul 11, 2025
2f6977e
feat: add Realtime private only feature flag (#37026)
w3b6x9 Jul 11, 2025
ff49dee
haiku model (#37043)
SaxonF Jul 11, 2025
8d73e0a
fix: Don't use `public` schema as default when creating a foreign sch…
ivasilov Jul 11, 2025
ec454c5
docs(mcp): production data clarification (#37033)
gregnr Jul 11, 2025
9fc9dc5
feat(replication): Improve status display of the pipeline (#37024)
iambriccardo Jul 11, 2025
62b8a93
luma events (#37046)
fsansalvadore Jul 11, 2025
80b9b6f
Temporarily switch to Haiku (#37050)
SaxonF Jul 11, 2025
d6b4ab1
feat: bump auth-js to v2.71.0-rc.7 (#36978)
hf Jul 14, 2025
d8f34dc
remove duplicate download (#37093)
SaxonF Jul 14, 2025
1cc7124
Branches page (#37080)
SaxonF Jul 14, 2025
e0a3ab2
fix: additional fixes for api keys, jwt signing keys (#37069)
hf Jul 14, 2025
89f12d7
download as migration (#37092)
SaxonF Jul 14, 2025
985b530
chore: hint for compute costs in upgrade screen (#37094)
kevcodez Jul 14, 2025
3046683
docs: jwt signing keys (#37027)
hf Jul 14, 2025
4b0bd73
chore: jwt keys page table layout (#37097)
MildTomato Jul 14, 2025
ef5c15a
Add platform kit to library (#37068)
SaxonF Jul 14, 2025
0cbc21a
chore: Add "Luca Forstner" to humans.txt (#37106)
lforst Jul 14, 2025
57edade
database report: rename label (#37102)
jordienr Jul 14, 2025
f93058c
Improve loading and success handlers for JWT keys (#37109)
joshenlim Jul 14, 2025
9eddc55
d1 (#37100)
fsansalvadore Jul 14, 2025
a20a47c
fix find by id in vault (#37101)
jordienr Jul 14, 2025
804f270
reports pricing (#36992)
jordienr Jul 14, 2025
5c4662f
docs: Fix type typo in Kotlin docs (#37110)
pank-su Jul 14, 2025
39c9210
Fix Issue #26280 "User Management App" Docs - safeGetSession typescri…
Abhinanda-Shetty Jul 14, 2025
1910695
fix: update platform kit blog post (#37112)
w3b6x9 Jul 14, 2025
c715269
Fix missing light mode assets in UI platform blog (#37116)
joshenlim Jul 14, 2025
d302194
fix: sort lw15 meetups by city name (#37113)
w3b6x9 Jul 14, 2025
d8b623a
fix(api-settings): correct API keys description text with link (#37118)
cstockton Jul 14, 2025
ce14f30
feat: hybrid search (#37127)
charislam Jul 14, 2025
95a4d9b
fix(docs): magic_link is not a valid action type (#37129)
micaeldias Jul 14, 2025
1c23129
docs: add auth getClaims method (#37122)
charislam Jul 14, 2025
927f92f
add default main branch if none exists (#37134)
SaxonF Jul 15, 2025
db59869
Edit function refetch fix (#37137)
SaxonF Jul 15, 2025
6315708
Remove review button (#37138)
SaxonF Jul 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .github/workflows/docs-lint-v2-scheduled.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@ jobs:
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
key: b848086c298be920a40aa9b26c65c7575ae8deca
key: 3186b58a532c98d7f470f2b887c2b74a086d5f2e
- name: install linter
if: steps.cache-cargo.outputs.cache-hit != 'true'
run: cargo install --locked --git https://github.com/supabase-community/supa-mdx-lint --rev b848086c298be920a40aa9b26c65c7575ae8deca
run: cargo install --locked --git https://github.com/supabase-community/supa-mdx-lint --rev 3186b58a532c98d7f470f2b887c2b74a086d5f2e
- name: run linter
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/docs-lint-v2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ jobs:
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
key: b848086c298be920a40aa9b26c65c7575ae8deca
key: 3186b58a532c98d7f470f2b887c2b74a086d5f2e
- name: install linter
if: steps.filter.outputs.docs == 'true' && steps.cache-cargo.outputs.cache-hit != 'true'
run: cargo install --locked --git https://github.com/supabase-community/supa-mdx-lint --rev b848086c298be920a40aa9b26c65c7575ae8deca
run: cargo install --locked --git https://github.com/supabase-community/supa-mdx-lint --rev 3186b58a532c98d7f470f2b887c2b74a086d5f2e
- name: install reviewdog
if: steps.filter.outputs.docs == 'true'
uses: reviewdog/action-setup@3f401fe1d58fe77e10d665ab713057375e39b887 # v1.3.0
Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/docs-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,4 +42,10 @@ jobs:
run: pnpm i

- name: Run tests
run: pnpm run test:docs
run: |
touch .env
# Needed to prevent local Supabase startup from erroring, due to
# GitHub Auth being enabled in config
echo "GITHUB_CLIENT_ID=dummy-id" >> .env
echo "GITHUB_SECRET=dummy-secret" >> .env
pnpm run test:docs
91 changes: 0 additions & 91 deletions .github/workflows/studio-e2e-tests.yml

This file was deleted.

4 changes: 3 additions & 1 deletion .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,6 @@ apps/cms/config/api.ts
# files auto-generated by payload cms
apps/cms/src/app/*
apps/cms/src/migrations/*
apps/cms/src/payload-types.ts
apps/cms/src/payload-types.ts
# ignore because of <br/><br/>
apps/www/_blog/2025-07-14-supabase-ui-platform-kit.mdx
8 changes: 4 additions & 4 deletions apps/docs/app/api/graphql/tests/searchDocs.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ vi.mock(import('~/lib/openAi'), () => ({
}))

const rpcSpy = vi.fn().mockImplementation((funcName, params) => {
if (funcName === 'search_content') {
if (funcName === 'search_content_hybrid') {
const limit = params?.max_result || 2
const mockResults = [
{
Expand Down Expand Up @@ -88,7 +88,7 @@ describe('/api/graphql searchDocs', () => {
expect(json.data).toBeDefined()
expect(json.data.searchDocs).toBeDefined()
expect(json.data.searchDocs.nodes).toBeInstanceOf(Array)
expect(json.data.searchDocs.nodes).toHaveLength(2)
expect(json.data.searchDocs.nodes).toHaveLength(3)
expect(json.data.searchDocs.nodes[0]).toMatchObject({
title: 'Test Guide',
href: '/guides/test',
Expand Down Expand Up @@ -117,7 +117,7 @@ describe('/api/graphql searchDocs', () => {
expect(json.data.searchDocs.nodes).toHaveLength(1)
expect(json.data.searchDocs.nodes[0].title).toBe('Test Guide')
expect(rpcSpy).toHaveBeenCalledWith(
'search_content',
'search_content_hybrid',
expect.objectContaining({
max_result: 1,
})
Expand Down Expand Up @@ -146,7 +146,7 @@ describe('/api/graphql searchDocs', () => {
expect(json.errors).toBeUndefined()
expect(json.data.searchDocs.nodes[0].content).toBe('Test content')
expect(rpcSpy).toHaveBeenCalledWith(
'search_content',
'search_content_hybrid',
expect.objectContaining({
include_full_content: true,
})
Expand Down
5 changes: 4 additions & 1 deletion apps/docs/app/api/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,10 @@ export class CollectionQueryError extends Error {
): CollectionQueryError {
const fetchFailedFor =
countError && dataError ? 'count and collection' : countError ? 'count' : 'collection'
return new CollectionQueryError(`Failed to fetch ${fetchFailedFor}`, {
let message = `Failed to fetch ${fetchFailedFor}`
if (countError) message += `: CountError: ${countError.message}`
if (dataError) message += `: CollectionError: ${dataError.message}`
return new CollectionQueryError(message, {
count: countError,
data: dataError,
})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@ import { readFile } from 'node:fs/promises'
import { join, relative } from 'node:path'
import rehypeSlug from 'rehype-slug'
import emoji from 'remark-emoji'
import Link from 'next/link'
import { Button } from 'ui'
import { Admonition } from 'ui-patterns'

import { GuideTemplate, newEditLink } from '~/features/docs/GuidesMdx.template'
import { Guide, GuideArticle, GuideHeader, GuideFooter, GuideMdxContent } from '~/features/ui/guide'
import { newEditLink } from '~/features/helpers.edit-link'
import {
genGuideMeta,
genGuidesStaticParams,
Expand Down Expand Up @@ -102,104 +106,134 @@ const pageMap = [
slug: 'airtable',
meta: {
title: 'Airtable',
dashboardIntegrationPath: 'airtable_wrapper',
},
remoteFile: 'airtable.md',
},
{
slug: 'auth0',
meta: {
title: 'Auth0',
dashboardIntegrationPath: 'auth0_wrapper',
},
remoteFile: 'auth0.md',
},
{
slug: 'bigquery',
meta: {
title: 'BigQuery',
dashboardIntegrationPath: 'bigquery_wrapper',
},
remoteFile: 'bigquery.md',
},
{
slug: 'clerk',
meta: {
title: 'Clerk',
dashboardIntegrationPath: 'clerk_wrapper',
},
remoteFile: 'clerk.md',
},
{
slug: 'clickhouse',
meta: {
title: 'ClickHouse',
dashboardIntegrationPath: 'clickhouse_wrapper',
},
remoteFile: 'clickhouse.md',
},
{
slug: 'cognito',
meta: {
title: 'AWS Cognito',
dashboardIntegrationPath: 'cognito_wrapper',
},
remoteFile: 'cognito.md',
},
{
slug: 'duckdb',
meta: {
title: 'DuckDB',
},
remoteFile: 'duckdb.md',
},
{
slug: 'firebase',
meta: {
title: 'Firebase',
dashboardIntegrationPath: 'firebase_wrapper',
},
remoteFile: 'firebase.md',
},
{
slug: 'iceberg',
meta: {
title: 'Iceberg',
dashboardIntegrationPath: 'iceberg_wrapper',
},
remoteFile: 'iceberg.md',
},
{
slug: 'logflare',
meta: {
title: 'Logflare',
dashboardIntegrationPath: 'logflare_wrapper',
},
remoteFile: 'logflare.md',
},
{
slug: 'mssql',
meta: {
title: 'MSSQL',
dashboardIntegrationPath: 'mssql_wrapper',
},
remoteFile: 'mssql.md',
},
{
slug: 'notion',
meta: {
title: 'Notion',
dashboardIntegrationPath: 'notion_wrapper',
},
remoteFile: 'notion.md',
},
{
slug: 'paddle',
meta: {
title: 'Paddle',
dashboardIntegrationPath: 'paddle_wrapper',
},
remoteFile: 'paddle.md',
},
{
slug: 'redis',
meta: {
title: 'Redis',
dashboardIntegrationPath: 'redis_wrapper',
},
remoteFile: 'redis.md',
},
{
slug: 's3',
meta: {
title: 'AWS S3',
dashboardIntegrationPath: 's3_wrapper',
},
remoteFile: 's3.md',
},
{
slug: 'snowflake',
meta: {
title: 'Snowflake',
dashboardIntegrationPath: 'snowflake_wrapper',
},
remoteFile: 'snowflake.md',
},
{
slug: 'stripe',
meta: {
title: 'Stripe',
dashboardIntegrationPath: 'stripe_wrapper',
},
remoteFile: 'stripe.md',
},
Expand Down Expand Up @@ -240,7 +274,31 @@ const WrappersDocs = async (props: { params: Promise<Params> }) => {
} as SerializeOptions)
: undefined

return <GuideTemplate meta={meta} mdxOptions={options} {...data} />
const dashboardIntegrationURL = getDashboardIntegrationURL(meta.dashboardIntegrationPath)

return (
<Guide meta={meta}>
<GuideArticle>
<GuideHeader />

{dashboardIntegrationURL && (
<Admonition type="tip" className="mb-4">
<p>You can enable the {meta.title} wrapper right from the Supabase dashboard.</p>

<Button asChild>
<Link href={dashboardIntegrationURL} className="no-underline">
Open wrapper in dashboard
</Link>
</Button>
</Admonition>
)}

<GuideMdxContent content={data.content} mdxOptions={options} />

<GuideFooter editLink={data.editLink} />
</GuideArticle>
</Guide>
)
}

/**
Expand Down Expand Up @@ -309,6 +367,12 @@ const getContent = async (params: Params) => {
}
}

const getDashboardIntegrationURL = (wrapperPath?: string) => {
return wrapperPath
? `https://supabase.com/dashboard/project/_/integrations/${wrapperPath}/overview`
: null
}

const assetUrlTransform = (url: string, baseUrl: string): string => {
const assetPattern = /(\.\.\/)+assets\//

Expand Down
Loading
Loading