Add Sign in with Appwrite docs under Partners#3116
Conversation
Appwrite WebsiteProject ID: Website (appwrite/website)Project ID: Tip Silent mode disables those chatty PR comments if you prefer peace and quiet |
# Conflicts: # src/routes/docs/Sidebar.svelte
Greptile SummaryThis PR adds a new Partners Apps docs section for Sign in with Appwrite. The main changes are:
Confidence Score: 4/5This is close, but the remaining broken docs links should be fixed before merging.
src/routes/docs/partners/apps/+page.markdoc Important Files Changed
Prompt To Fix All With AIFix the following 2 code review issues. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 2
src/routes/docs/partners/apps/+page.markdoc:67-76
**Forward Cards Still 404**
The `device-flow` card now has a route, but the `dashboards`, `deployments`, and `agents` cards still point to pages that are not present under `src/routes/docs/partners/apps`. A reader who clicks any of these Explore cards from the new landing page reaches a docs 404. Please add those pages with this PR or remove these cards until the routes exist.
### Issue 2 of 2
src/routes/docs/partners/apps/+page.markdoc:13
**Provider Link 404s**
This callout still links to `/docs/products/auth/oauth-server`, but that route is not present in the tree. A reader looking for provider-side OAuth docs from this new overview page lands on a 404 unless a separate docs change deploys first. Please point this to a route that ships here, or keep the link out until the target page exists.
Reviews (4): Last reviewed commit: "docs(partners): address review feedback ..." | Re-trigger Greptile |
| {% cards_item href="/docs/partners/apps/dashboards" title="Dashboards" %} | ||
| Build a read-only dashboard over the projects a user selects. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/deployments" title="Deployments" %} | ||
| Deploy functions and sites into a user's project with write scopes. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/device-flow" title="Device flow" %} | ||
| Sign in from CLIs and devices with a short user code. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/agents" title="Agents" %} | ||
| Connect AI agents and MCP clients to your users' projects. |
There was a problem hiding this comment.
Forward Cards Hit Missing Routes
When this Overview page is deployed before the follow-up pages, the Dashboards, Deployments, Device flow, and Agents cards send readers to routes that are not in this change. Those prominent links become 404s from the new docs landing page.
Knowledge Base Used:
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/routes/docs/partners/apps/+page.markdoc
Line: 60-70
Comment:
**Forward Cards Hit Missing Routes**
When this Overview page is deployed before the follow-up pages, the Dashboards, Deployments, Device flow, and Agents cards send readers to routes that are not in this change. Those prominent links become 404s from the new docs landing page.
**Knowledge Base Used:**
- [Docs section routing and layout](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/docs-section.md)
- [Markdoc content pipeline](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/markdoc-content-pipeline.md)
How can I resolve this? If you propose a fix, please make it concise.| Before this, a tool that worked with a user's Appwrite project asked them to create an API key and paste it in. That key never expired unless they remembered it, carried whatever scopes they picked under pressure, and had to be repeated for every project. With Sign in with Appwrite, the user approves once, picks the projects your app can reach, and can revoke everything from their account page at any time. | ||
|
|
||
| {% info title="Building your own provider?" %} | ||
| This section is for apps that build on top of Appwrite itself. To make your own product an OAuth provider so that third parties can offer "Sign in with your product", see the [OAuth2 server](/docs/products/auth/oauth-server) documentation. |
There was a problem hiding this comment.
This callout points readers to /docs/products/auth/oauth-server, but that route is not present with this change. If the provider docs are not deployed first, the new Overview page sends users who want to build a provider to a 404.
Knowledge Base Used:
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/routes/docs/partners/apps/+page.markdoc
Line: 13
Comment:
**Provider Link Has No Route**
This callout points readers to `/docs/products/auth/oauth-server`, but that route is not present with this change. If the provider docs are not deployed first, the new Overview page sends users who want to build a provider to a 404.
**Knowledge Base Used:**
- [Docs section routing and layout](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/docs-section.md)
- [Markdoc content pipeline](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/markdoc-content-pipeline.md)
How can I resolve this? If you propose a fix, please make it concise.- JSON bodies with client credentials in the body across all curl/hurl blocks - Switch examples from tables to databases scope, list databases in quick start - Replace introspection with userinfo verification and JWT decoding via JWKS - Remove authorization_details pre-selection and fix consent narrowing claims - Official product names in the project scope catalog - Add refresh section to quick start, public client PKCE section to Tokens - New Device flow concept page with diagram, tested end to end - Retake consent screenshot with Databases READ permission
| {% cards_item href="/docs/partners/apps/dashboards" title="Dashboards" %} | ||
| Build a read-only dashboard over the projects a user selects. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/deployments" title="Deployments" %} | ||
| Deploy functions and sites into a user's project with write scopes. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/device-flow" title="Device flow" %} | ||
| Sign in from CLIs and devices with a short user code. | ||
| {% /cards_item %} | ||
| {% cards_item href="/docs/partners/apps/agents" title="Agents" %} |
There was a problem hiding this comment.
The device-flow card now has a route, but the dashboards, deployments, and agents cards still point to pages that are not present under src/routes/docs/partners/apps. A reader who clicks any of these Explore cards from the new landing page reaches a docs 404. Please add those pages with this PR or remove these cards until the routes exist.
Knowledge Base Used: Docs section routing and layout
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/routes/docs/partners/apps/+page.markdoc
Line: 67-76
Comment:
**Forward Cards Still 404**
The `device-flow` card now has a route, but the `dashboards`, `deployments`, and `agents` cards still point to pages that are not present under `src/routes/docs/partners/apps`. A reader who clicks any of these Explore cards from the new landing page reaches a docs 404. Please add those pages with this PR or remove these cards until the routes exist.
**Knowledge Base Used:** [Docs section routing and layout](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/docs-section.md)
How can I resolve this? If you propose a fix, please make it concise.| Before this, a tool that worked with a user's Appwrite project asked them to create an API key and paste it in. The key carried whatever scopes and expiry the user picked at creation, worked for one project only, and lived outside their control once pasted. With Sign in with Appwrite, the user approves once, picks the projects your app can reach, and can revoke everything from their account page at any time. | ||
|
|
||
| {% info title="Building your own provider?" %} | ||
| This section is for apps that build on top of Appwrite itself. To make your own product an OAuth2 provider so that third parties can offer "Sign in with your product", see the [OAuth2 server](/docs/products/auth/oauth-server) documentation. |
There was a problem hiding this comment.
This callout still links to /docs/products/auth/oauth-server, but that route is not present in the tree. A reader looking for provider-side OAuth docs from this new overview page lands on a 404 unless a separate docs change deploys first. Please point this to a route that ships here, or keep the link out until the target page exists.
Knowledge Base Used: Docs section routing and layout
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/routes/docs/partners/apps/+page.markdoc
Line: 13
Comment:
**Provider Link 404s**
This callout still links to `/docs/products/auth/oauth-server`, but that route is not present in the tree. A reader looking for provider-side OAuth docs from this new overview page lands on a 404 unless a separate docs change deploys first. Please point this to a route that ships here, or keep the link out until the target page exists.
**Knowledge Base Used:** [Docs section routing and layout](https://app.greptile.com/appwrite/-/custom-context/knowledge-base/appwrite/website/-/docs/docs-section.md)
How can I resolve this? If you propose a fix, please make it concise.
What does this PR do?
Adds a new Partners > Apps docs section for Sign in with Appwrite: building apps that get consent-based, scoped OAuth2 access to users' Appwrite projects and organizations.
New pages under
/docs/partners/apps:project:*andorganization:*catalogs, and targeting viaauthorization_detailsAlso:
curl/hurlcode block languagesEvery flow documented here was exercised end to end against a live Appwrite instance, including the full authorize/consent/token cycle, refresh rotation and reuse detection, revocation, and the device flow. Node.js and Rust server SDK blocks and the Web client blocks were executed as written.
Note: the Overview and Quick start link to four guide pages (Dashboards, Deployments, Device flow, Agents) that ship in a follow-up, and to the OAuth2 server section that lands with the provider-side docs PR.
Test Plan
bun run formatandbun run optimizecleanRelated PRs and Issues
Checklist