Skip to content

docs: refresh SDK READMEs and fix broken badges - #2077

Merged
ChiragAgg5k merged 22 commits into
mainfrom
docs/sdk-readmes
Oct 17, 2026
Merged

ChiragAgg5k merged 22 commits into
mainfrom
docs/sdk-readmes

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

What does this PR do?

Refreshes every SDK README template. The published READMEs had broken badges, outdated install steps, code that no longer compiles against the generated SDKs, and dead links.

Badges, across all templates:

  • The license badge used shields.io's GitHub API, which intermittently renders "Unable to select next GitHub token from pool". It is now a static badge built from spec.info.license.name.
  • The Travis CI build badge pointed at a service that is gone and is removed.
  • The Twitter follow badge renders empty since the API shutdown and is replaced by a static X badge.
  • The Swift Package Manager badge used the same failing GitHub release lookup and now shows {{ sdk.version }}.
  • The CLI gains an npm version badge; the Claude and Codex plugin badges now use sdk.discordChannel, and their version badge no longer says "api version".

Per SDK, the install and getting-started content in the templates was rewritten and every code snippet was compiled or type-checked against freshly generated SDKs (tsc, dart/flutter analyze, Gradle, swift build, go build, cargo check, PHP, dotnet, Python, Ruby). Unity snippets were checked against the generated signatures only.

  • CLI: installation reordered (Homebrew, npm, install script, then Windows), heading levels fixed, $ prompts removed, shell completion as its own section.
  • Web, Node, React Native: CDN global documented, Node minimum version, Expo install, push guide moved after getting started.
  • Dart, Flutter: dart pub add, Android requirements under installation, push after getting started.
  • Android, Kotlin: removed the dead s01.oss.sonatype.org snapshot repository, Kotlin DSL and Groovy snippets, minSdk 24.
  • Swift, Apple: the package URL rendered the SSH remote (git@github.com:...), which fails in Xcode without SSH keys; it is now HTTPS. Requirements come from Package.swift.
  • Go: the only usage section was a 2021 "Testing the SDK" walkthrough on the legacy documents API; replaced with a getting-started section that uses {{ sdk | goPackagePath }} so imports follow the major version.
  • Rust, Python, Ruby, PHP, .NET, Unity: install steps, minimum versions and broken links. Unity's manual install linked to a page that does not exist.
  • Skills, Cursor, Claude, Codex, Zed: the agent-skills repo is now appwrite/skills, install commands match each tool's current CLI, and the Zed README no longer points at an Extension Gallery listing that does not exist.

Also: contribution links point at main, the injected getting-started block is trimmed so no double blank lines appear at the seams, plugin homepages use the current /docs/tooling/ai/agents/* URLs, and example.php links the license on main.

The getting-started content injected into these templates lives in appwrite/appwrite and is updated in a companion PR: appwrite/appwrite#14613

Test Plan

  • composer lint-twig: 651 files, 0 errors
  • composer refactor:check: passes
  • vendor/bin/phpunit --testsuite Generation: 110 tests, 4 skipped
  • Regenerated each SDK and read the rendered README with its GETTING_STARTED.md injected
  • Fetched every badge URL to confirm shields returns a valid SVG, and checked every link in the rendered READMEs

Related PRs and Issues

Closes #2078

State the Python 3.9 floor from requires-python, link the PyPI and RubyGems packages, add Bundler as the primary Ruby install, point the contribution guide at main and trim the getting-started block so no double blank line precedes Contribution.
The Go README's only usage was a 'Testing the SDK' walkthrough built on the legacy Databases documents API with a fake 2021 log line. Getting started now lives in the template because its imports carry the module's major version, which a static GETTING_STARTED.md cannot track. It still yields to sdk.gettingStarted when one is supplied.

Rust gains the tokio cargo add step the async SDK needs, and both point the contribution guide at main and trim the injected getting started so the seams render a single blank line.
The package URL rendered as the SSH git remote, which fails for anyone without GitHub SSH keys. Xcode steps used the pre-Xcode 15 menu name, and the README never stated the Swift tools version or minimum platforms from Package.swift.
…ed and push

Flutter's minSdk and desugaring requirements apply to every app, not only Push users, so they move under Installation; the Push guide follows Getting Started instead of preceding it and gains a basic subscribe example. Prose is unwrapped, the contribution link points at main, and the getting-started seam no longer renders a double blank line.
Drop the dead s01.oss.sonatype.org snapshot repository (nothing is published there), give Kotlin DSL and Groovy dependency snippets with the minimum Android/Java versions, drop the Maven pom snippet for the Android AAR, move Push after Getting Started with a subscribe example, unwrap hard-wrapped prose, and own the Learn more links with current quick-start and reference URLs.
Show how to use the CDN global and ESM, CommonJS and Deno imports, state the Node.js minimum that undici 6 needs, move the React Native Push guide after getting started and unwrap its prose, trim the injected getting-started block so no blank lines pile up, and point the contribution guide at main.
The Zed extension was rejected from the Zed gallery, so its README pointed at an install path that does not exist; Codex now reads user skills from ~/.agents/skills and installs plugins with codex plugin add; the Claude Code README had no install section at all and its dev commands referenced the generator's examples folder. Cursor and skills READMEs rendered the generic SDK description and a server compatibility warning with a broken releases link, and Claude/Codex hardcoded the Discord badge and labelled the plugin version as an API version.
The Unity manual install pointed at appwrite.io/releases/latest and a .unitypackage that releases never ship, and its contribution link sent readers to the SDK repo on a master branch that does not exist. The .NET install mixed two tools in one PowerShell block, and its TablesDB model notes now live in GETTING_STARTED so they sit before Learn more. Getting started is trimmed so sections are separated by a single blank line.
@hansi-codes

hansi-codes Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

🟢 Tier S · Ready to merge

Refreshes the SDK and agent-plugin README templates with current installation instructions, getting-started examples, badges, and links. It also updates plugin homepage metadata and the example license URL, and separates Android background-push guidance into distinct paragraphs.

Latest changes: The newest change separates the Android background notification, permission, and foreground-delivery guidance into individual paragraphs without changing their content.

Verdict New comments Fixed Still open
✅ Approved 0 0 0
📂 Walkthrough · 18
File Change
example.php Points the example license link to the main branch.
templates/android/README.md.twig Refreshes Android installation and push guidance; the latest change separates background notification details into paragraphs.
templates/claude-plugin/README.md.twig, templates/claude-plugin/marketplace.json.twig, templates/claude-plugin/plugin.json.twig Updates Claude plugin setup guidance, badges, and homepage metadata.
templates/cli/README.md.twig Reorders CLI installation options and updates completion and contribution guidance.
templates/codex-plugin/README.md.twig, templates/codex-plugin/plugin.json.twig Refreshes Codex plugin setup and skills guidance, badges, and homepage metadata.
templates/cursor-plugin/README.md.twig Updates Cursor plugin installation, skills, commands, and documentation links.
templates/dart/README.md.twig, templates/flutter/README.md.twig Refreshes Dart and Flutter installation instructions and push documentation.
templates/deno/README.md.twig, templates/node/README.md.twig, templates/web/README.md.twig Updates JavaScript SDK badges, installation guidance, and module/CDN examples.
templates/dotnet/README.md.twig Refreshes .NET package installation and getting-started guidance.
templates/go/README.md.twig Replaces the legacy Go testing walkthrough with package-aware getting-started guidance.
templates/kotlin/README.md.twig Refreshes Kotlin dependency examples and adds learning resources.
templates/php/README.md.twig, templates/python/README.md.twig, templates/ruby/README.md.twig Updates package installation guidance, badges, and injected getting-started formatting.
templates/react-native/README.md.twig Refreshes Expo installation and push-notification setup guidance.
templates/rust/README.md.twig Adds Tokio setup guidance and updates badges and injected getting-started formatting.
templates/skills/README.md.twig Updates agent skills documentation, badges, and learning links.
templates/swift/README.md.twig Refreshes Swift package installation, requirements, and badges.
templates/unity/README.md.twig Refreshes Unity installation options and contribution links.
templates/zed-extension/README.md.twig Updates Zed extension setup and hosted MCP server guidance.

Reviewed the commits since e3ba16d · Details · Comment @hansi-codes review to re-run, or mention @hansi-codes with a question.

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Tier S · Looks good to merge. Summary

@hansi-codes hansi-codes Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Tier S · Looks good to merge. Summary

@ChiragAgg5k
ChiragAgg5k merged commit 48a7846 into main Oct 17, 2026
61 checks passed
@ChiragAgg5k
ChiragAgg5k deleted the docs/sdk-readmes branch October 17, 2026 07:59
This was referenced Oct 17, 2026
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.

Refresh SDK READMEs and fix broken badges

1 participant