From b42bb3733f176bc2ccd222a7380e5120fee158bc Mon Sep 17 00:00:00 2001 From: Nik Richers Date: Thu, 2 Jul 2026 08:11:01 -0700 Subject: [PATCH] docs(content-listings): add Next Steps sections to storage, functions, and realtime overview pages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds three new ContentListingGroup exports — storageNextSteps, functionsNextSteps, realtimeNextSteps — and wires each into the lookup index and the corresponding MDX overview page. Links point to existing depth guides so readers who land on the overview have a clear path forward after the Get Started and Examples sections. --- apps/docs/content/guides/functions.mdx | 2 ++ apps/docs/content/guides/realtime.mdx | 2 ++ apps/docs/content/guides/storage.mdx | 2 ++ .../data/content-listings/functions.data.ts | 23 +++++++++++++++++++ apps/docs/data/content-listings/index.ts | 18 +++++++++++++-- .../data/content-listings/realtime.data.ts | 23 +++++++++++++++++++ .../data/content-listings/storage.data.ts | 23 +++++++++++++++++++ 7 files changed, 91 insertions(+), 2 deletions(-) diff --git a/apps/docs/content/guides/functions.mdx b/apps/docs/content/guides/functions.mdx index 2982243fa10..af7c9a100d6 100644 --- a/apps/docs/content/guides/functions.mdx +++ b/apps/docs/content/guides/functions.mdx @@ -56,3 +56,5 @@ Check out [Supabase Edge Function Examples](https://github.com/supabase/supabase + + diff --git a/apps/docs/content/guides/realtime.mdx b/apps/docs/content/guides/realtime.mdx index 8352d90659b..ce98f396198 100644 --- a/apps/docs/content/guides/realtime.mdx +++ b/apps/docs/content/guides/realtime.mdx @@ -25,3 +25,5 @@ Supabase provides a globally distributed [Realtime](https://github.com/supabase/ + + diff --git a/apps/docs/content/guides/storage.mdx b/apps/docs/content/guides/storage.mdx index a918edf83a1..8438fa1de3e 100644 --- a/apps/docs/content/guides/storage.mdx +++ b/apps/docs/content/guides/storage.mdx @@ -22,3 +22,5 @@ Supabase Storage is a robust, scalable solution for managing files of any size w + + diff --git a/apps/docs/data/content-listings/functions.data.ts b/apps/docs/data/content-listings/functions.data.ts index bb69d870704..5afd02b1364 100644 --- a/apps/docs/data/content-listings/functions.data.ts +++ b/apps/docs/data/content-listings/functions.data.ts @@ -176,6 +176,29 @@ export const functionsExamplesMessaging: ContentListingGroup = { ], } +export const functionsNextSteps: ContentListingGroup = { + id: 'functions-next-steps', + heading: 'Next steps', + type: 'grid', + items: [ + { + title: 'Deploy', + href: '/guides/functions/deploy', + description: 'Deploy Edge Functions to production with the Supabase CLI or dashboard.', + }, + { + title: 'Secrets', + href: '/guides/functions/secrets', + description: 'Store and access credentials and environment variables securely.', + }, + { + title: 'Local development', + href: '/guides/functions/development-environment', + description: 'Set up a local runtime for testing and debugging Edge Functions.', + }, + ], +} + export const functionsExamplesOperations: ContentListingGroup = { id: 'functions-examples-operations', heading: 'Operations & security', diff --git a/apps/docs/data/content-listings/index.ts b/apps/docs/data/content-listings/index.ts index b5ac8a84d09..6136de5c85c 100644 --- a/apps/docs/data/content-listings/index.ts +++ b/apps/docs/data/content-listings/index.ts @@ -9,10 +9,21 @@ import { functionsExamplesSupabase, functionsExamplesWebhooksPayments, functionsGetStarted, + functionsNextSteps, } from './functions.data' import { gettingStartedGetStarted } from './getting-started.data' -import { realtimeExamples, realtimeGetStarted, realtimeResources } from './realtime.data' -import { storageExamples, storageGetStarted, storageResources } from './storage.data' +import { + realtimeExamples, + realtimeGetStarted, + realtimeNextSteps, + realtimeResources, +} from './realtime.data' +import { + storageExamples, + storageGetStarted, + storageNextSteps, + storageResources, +} from './storage.data' const ALL_GROUPS: readonly ContentListingGroup[] = [ authGetStarted, @@ -32,7 +43,10 @@ const ALL_GROUPS: readonly ContentListingGroup[] = [ realtimeResources, storageGetStarted, storageExamples, + storageNextSteps, storageResources, + functionsNextSteps, + realtimeNextSteps, ] export const CONTENT_LISTINGS: Readonly> = Object.fromEntries( diff --git a/apps/docs/data/content-listings/realtime.data.ts b/apps/docs/data/content-listings/realtime.data.ts index 0e0e85b2270..8a1100628c7 100644 --- a/apps/docs/data/content-listings/realtime.data.ts +++ b/apps/docs/data/content-listings/realtime.data.ts @@ -45,6 +45,29 @@ export const realtimeExamples: ContentListingGroup = { ], } +export const realtimeNextSteps: ContentListingGroup = { + id: 'realtime-next-steps', + heading: 'Next steps', + type: 'grid', + items: [ + { + title: 'Broadcast', + href: '/guides/realtime/broadcast', + description: 'Send low-latency messages between connected clients.', + }, + { + title: 'Presence', + href: '/guides/realtime/presence', + description: 'Track who is online and synchronize shared state across clients.', + }, + { + title: 'Postgres Changes', + href: '/guides/realtime/postgres-changes', + description: 'Listen to database inserts, updates, and deletes in real time.', + }, + ], +} + export const realtimeResources: ContentListingGroup = { id: 'realtime-resources', heading: 'Resources', diff --git a/apps/docs/data/content-listings/storage.data.ts b/apps/docs/data/content-listings/storage.data.ts index 9180ea08d49..38d69472908 100644 --- a/apps/docs/data/content-listings/storage.data.ts +++ b/apps/docs/data/content-listings/storage.data.ts @@ -50,6 +50,29 @@ export const storageExamples: ContentListingGroup = { ], } +export const storageNextSteps: ContentListingGroup = { + id: 'storage-next-steps', + heading: 'Next steps', + type: 'grid', + items: [ + { + title: 'Access control', + href: '/guides/storage/security/access-control', + description: 'Secure buckets and objects with row-level security policies.', + }, + { + title: 'Image transformations', + href: '/guides/storage/serving/image-transformations', + description: 'Resize, compress, and convert images on the fly at the CDN edge.', + }, + { + title: 'CDN', + href: '/guides/storage/cdn/fundamentals', + description: 'Understand how the global CDN caches and delivers your assets.', + }, + ], +} + export const storageResources: ContentListingGroup = { id: 'storage-resources', heading: 'Resources',