mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 09:25:06 +03:00
docs(integrations): add Stripe Projects provisioning guide (#49354)
## 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? This PR adds some missing Stripe Projects documentation: a short peer entry on the Integrations overview (next to the existing Vercel Marketplace entry) plus a focused guide page. Closes DOCS-1337. ## What is the current behavior? - Linear item: `DOCS-1337`: Document programmatic project provisioning, with Stripe Projects as a partner example - No page under `apps/docs/content/**` mentions Stripe Projects. The only existing prose is a blog post and a `/go/` marketing page, neither indexed as docs nor surfaced in `llms.txt` (which is generated purely from `content/guides/**` directory names/titles). - The Studio-side confirmation flow (`apps/studio/pages/partners/stripe/projects/login.tsx`) already exists and works; the gap is entirely on the docs side. ## What is the new behavior? - `apps/docs/content/guides/integrations.mdx`: added a "Stripe Projects" section, same weight as the existing "Vercel Marketplace" section (short description + link), so Stripe is presented as one of several provisioning paths rather than singled out. - `apps/docs/content/guides/integrations/stripe-projects.mdx` (new): Overview, Quickstart (CLI commands from the Stripe Projects blog post), Authorizing the request (the actual Supabase-side confirmation screen behavior), and Limitations. - `apps/docs/components/Navigation/NavigationMenu/NavigationMenu.constants.ts`: added the new page to the Integrations sidebar nav, alongside Vercel Marketplace. ## Additional context - Worktree: `~/GitHub/supabase/supabase/.claude/worktrees/docs-1337-stripe-projects` - Paired eval issue: `DOCS-1338`: a regression eval to be added/run separately, before and after this PR, to confirm agent discoverability actually improves. - Out of scope: the agent-skills piece (separate `supabase/agent-skills` repo, federated into docs at `content/guides/ai-tools/ai-skills.mdx`) is being picked up separately. - The org-linking limitation is confirmed against `AccountRequestDetailsDto` and `AccountRequestsController_confirmAccountRequest` in `packages/api-types/types/platform.d.ts`: the schema exposes a single optional `linked_organization`, not a list, and the confirm endpoint takes no request body, so there's no way for the client to select a different organization. - The first Vercel deploy on this branch failed on an invalid `<!-- -->` HTML comment (not valid MDX); fixed in a follow-up commit to use `{/* */}`. - Heading case (`Stripe Projects`) and the word `proxied` needed allowlist entries in `supa-mdx-lint/Rule001HeadingCase.toml` and `supa-mdx-lint/Rule003Spelling.toml`, matching the existing `Vercel Marketplace` precedent. - Added a Limitations bullet (per reviewer suggestion from gregorvand) on accessing the dashboard for a newly provisioned organization via `stripe projects open supabase` or the reset-password flow. ### Integrations page update ([PR preview](https://docs-git-nikrichers-docs-1337-document-programm-7b3426-supabase.vercel.app/docs/guides/integrations))  ### Stripe Projects page addition ([PR preview](https://docs-git-nikrichers-docs-1337-document-programm-7b3426-supabase.vercel.app/docs/guides/integrations/stripe-projects))  ### Test plan - [x] Confirm the "Stripe Projects" section renders on [the Integrations overview page (preview)](https://docs-git-nikrichers-docs-1337-document-programm-7b3426-supabase.vercel.app/docs/guides/integrations) - [x] Confirm [the new Stripe Projects page (preview)](https://docs-git-nikrichers-docs-1337-document-programm-7b3426-supabase.vercel.app/docs/guides/integrations/stripe-projects) renders and appears in the sidebar under Integrations - [ ] Confirm the new page surfaces in `llms.txt` (directory/title based) - [x] Org-linking limitation confirmed via the `AccountRequestDetailsDto`/confirm-endpoint schema (see Additional context) rather than a Stripe Projects team conversation - [x] Re-ran `supa-mdx-lint` allowlist additions locally; heading-case and spelling findings addressed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit - **New Features** - Added Stripe Projects to the integrations navigation. - Added guidance for provisioning Supabase projects through the Stripe CLI, synchronizing environments, accessing dashboards, rotating credentials, and understanding authorization and organization-linking limitations. - **Documentation** - Linked the Stripe Projects guide from the integrations overview. - Updated documentation validation to support Stripe Projects terminology and capitalization. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Nik Richers <nik@validmind.ai> Co-authored-by: Gregor <1828888+gregorvand@users.noreply.github.com>
This commit is contained in:
5 files changed
+70
No files matched your search
@@ -3289,6 +3289,10 @@ export const integrations: NavMenuConstant = {
|
||||
name: 'Vercel Marketplace',
|
||||
url: '/guides/integrations/vercel-marketplace',
|
||||
},
|
||||
{
|
||||
name: 'Stripe Projects',
|
||||
url: '/guides/integrations/stripe-projects',
|
||||
},
|
||||
{
|
||||
name: 'Build Your Own',
|
||||
items: [
|
||||
|
||||
@@ -15,3 +15,7 @@ Browse a curated list of Partners who offer one-click integrations, guides or ot
|
||||
## Vercel Marketplace
|
||||
|
||||
Create and manage your Supabase projects directly through Vercel. [Get started with Vercel](/docs/guides/integrations/vercel-marketplace).
|
||||
|
||||
## Stripe Projects
|
||||
|
||||
Provision a Supabase project from the Stripe CLI, for use by a human or an AI agent. [Get started with Stripe Projects](/docs/guides/integrations/stripe-projects).
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
id: 'stripe-projects'
|
||||
title: 'Stripe Projects'
|
||||
description: 'Provision a Supabase project from the Stripe CLI'
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
[Stripe Projects](https://docs.stripe.com/stripe-projects) is a workflow in the Stripe CLI that provisions real services and returns working credentials from a single command. Supabase is available in the catalog, so one command provisions a Postgres database along with the rest of Supabase (Auth, Storage, Edge Functions, and Realtime), without opening a dashboard.
|
||||
|
||||
Stripe Projects is designed for both humans and AI agents. The provisioning steps are deterministic and repeatable whether you run them yourself or an agent runs them for you.
|
||||
|
||||
<Admonition type="note">
|
||||
|
||||
Stripe Projects is currently a developer preview. If you run into issues, [reach out on Discord](https://discord.supabase.com/) or open an issue on [GitHub](https://github.com/supabase/supabase/issues).
|
||||
|
||||
</Admonition>
|
||||
|
||||
## Quickstart
|
||||
|
||||
[Install the Stripe CLI](https://docs.stripe.com/stripe-cli/install), then run:
|
||||
|
||||
```bash
|
||||
stripe plugin install projects
|
||||
stripe projects init my-app
|
||||
stripe projects add supabase/project
|
||||
stripe projects env --sync
|
||||
```
|
||||
|
||||
These commands create a new Supabase project in your account with a Postgres database ready to connect and write the project credentials to a local `.env` file. If you already have a Supabase account, the flow prompts you to link it instead of creating a new one.
|
||||
|
||||
To open the Supabase dashboard directly:
|
||||
|
||||
```bash
|
||||
stripe projects open supabase
|
||||
```
|
||||
|
||||
To rotate your database credentials:
|
||||
|
||||
```bash
|
||||
stripe projects rotate supabase/project
|
||||
```
|
||||
|
||||
For the full command reference, see [Stripe's Stripe Projects docs](https://docs.stripe.com/stripe-projects).
|
||||
|
||||
## Authorizing the request
|
||||
|
||||
The first time you provision a project this way, Supabase shows an authorization screen so you can confirm the request before anything is created:
|
||||
|
||||
- If you're not signed in to Supabase with the email Stripe has on file, you're asked to sign out and back in as that account.
|
||||
- If the Stripe account is already linked to a Supabase organization, you confirm the request.
|
||||
- Otherwise, confirming creates a new Supabase organization on your behalf.
|
||||
|
||||
Your Supabase project and organization work exactly like ones you create directly: you keep full access to the dashboard, your connection strings, and your data. Nothing is proxied or white-labeled.
|
||||
|
||||
## Limitations
|
||||
|
||||
- Stripe Projects is in developer preview, so behavior may change.
|
||||
- Provisioning links to a Supabase organization by matching the email on the Stripe account to a Supabase account; there's no option in the CLI flow to choose a different existing organization.
|
||||
- To access the Supabase dashboard for a new organization provisioned through Stripe Projects, use the `open` command (`stripe projects open supabase`). To log in to the Supabase dashboard directly without the CLI, follow the reset password flow for this account.
|
||||
@@ -233,6 +233,7 @@ may_uppercase = [
|
||||
"Spring Initializr",
|
||||
"Sqitch",
|
||||
"Storage",
|
||||
"Stripe Projects",
|
||||
"Studio",
|
||||
"Supabase",
|
||||
"Supabase AI Assistant",
|
||||
|
||||
@@ -368,6 +368,7 @@ allow_list = [
|
||||
"PostgreSQL",
|
||||
"PowerBI",
|
||||
"[Pp]refill",
|
||||
"[Pp]roxied",
|
||||
"ProGuard",
|
||||
"PubSub",
|
||||
"Prisma",
|
||||
|
||||
Reference in new issue
Block a user