Skip to content

Add Sign in with Appwrite docs under Partners#3116

Open
atharvadeosthale wants to merge 4 commits into
mainfrom
stardust-apps
Open

Add Sign in with Appwrite docs under Partners#3116
atharvadeosthale wants to merge 4 commits into
mainfrom
stardust-apps

Conversation

@atharvadeosthale

Copy link
Copy Markdown
Member

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:

  • Overview: what Sign in with Appwrite is and what it replaces (pasted API keys)
  • Quick start: register an app in the Console, run the authorization code flow, list granted projects, and call project APIs; includes the Appwrite provider path for products that run on Appwrite
  • Registration: Console (Marketplace) and Apps API registration, client types, secrets and rotation, labels
  • Scopes: identity scopes, the project:* and organization:* catalogs, and targeting via authorization_details
  • Consent: what users see, partial grants, when the screen is skipped, revocation
  • Tokens: access/refresh/ID tokens, refresh rotation and reuse detection, validation, revocation

Also:

  • Adds the Partners group to the docs sidebar (Project + Apps) and brings in the Projects API partner section it links to
  • Registers curl/hurl code block languages
  • 16 new Console screenshots (light + dark)

Every 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

  • All six pages render locally with no markdoc errors
  • Internal links verified against the working tree (except the intentional forward links above)
  • Screenshots verified in both themes at 1460x822
  • bun run format and bun run optimize clean

Related PRs and Issues

  • Provider-side OAuth2 server docs (stardust-oauth)

Checklist

  • Have you read the Contributing Guidelines on issues?
  • Did you add new tests and confirm existing tests pass?
  • Did you update the docs/README, if this PR changes behavior?

@appwrite

appwrite Bot commented Jul 21, 2026

Copy link
Copy Markdown

Appwrite Website

Project ID: 69d7efb00023389e8d27

Sites (1)
Site Status Logs Preview QR
 website
69d7f2670014e24571ca
Queued Queued View Logs Preview URL QR Code

Website (appwrite/website)

Project ID: 684969cb000a2f6c0a02

Sites (1)
Site Status Logs Preview QR
 website
68496a17000f03d62013
Queued Queued View Logs Preview URL QR Code


Tip

Silent mode disables those chatty PR comments if you prefer peace and quiet

@atharvadeosthale
atharvadeosthale changed the base branch from main to projects-api July 21, 2026 13:11
# Conflicts:
#	src/routes/docs/Sidebar.svelte
@greptile-apps

greptile-apps Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds a new Partners Apps docs section for Sign in with Appwrite. The main changes are:

  • New overview, quick start, registration, scopes, consent, tokens, and device flow docs.
  • New Partners > Apps sidebar and subsection navigation.
  • New light and dark screenshots for the Apps docs.
  • Updated optimizer cache entries for the new image assets.

Confidence Score: 4/5

This is close, but the remaining broken docs links should be fixed before merging.

  • The Apps overview still sends readers to missing dashboards, deployments, and agents routes.
  • The provider-side OAuth callout still points to a route that is not included in this tree.
  • The new sidebar entries and image cache updates look consistent.

src/routes/docs/partners/apps/+page.markdoc

Important Files Changed

Filename Overview
src/routes/docs/partners/apps/+page.markdoc Adds the Apps overview page, but some prominent links still target routes that are not present.
src/routes/docs/partners/apps/+layout.svelte Adds the Apps subsection navigation using the expected docs layout pattern.
src/routes/docs/Sidebar.svelte Adds the top-level Apps entry under Partners.
.optimize-cache.json Adds cache entries for the Partners Apps image assets.

Fix All in Claude Code Fix All in Codex

Prompt To Fix All With AI
Fix 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

Comment thread .optimize-cache.json
Comment on lines +60 to +70
{% 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.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 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.

Fix in Claude Code Fix in Codex

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.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 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:

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.

Fix in Claude Code Fix in Codex

Base automatically changed from projects-api to main July 22, 2026 06:52
- 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
Comment on lines +67 to +76
{% 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" %}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 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

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.

Fix in Claude Code Fix in Codex

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.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 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

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.

Fix in Claude Code Fix in Codex

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant