Visitar URL original
docs: deprecate the built-in Playground and drop it from the Docker guides by cluelessno1 · Pull Request #1407 · openfga/openfga.dev · GitHub
Skip to content

docs: deprecate the built-in Playground and drop it from the Docker guides - #1407

Draft
cluelessno1 wants to merge 2 commits into
docs-nextfrom
docs/playground-deprecation-docker
Draft

cluelessno1 wants to merge 2 commits into
docs-nextfrom
docs/playground-deprecation-docker

Conversation

@cluelessno1

Copy link
Copy Markdown
Member

Marks the built-in Playground as deprecated and stops publishing it in the Docker setup guide. The Playground page keeps one opt-in path with commands that work.

Note

This PR changes content that the docs-site/ parity contract freezes, so test:mintlify-content-parity (the "Check repository-owned Mintlify content" job) fails on purpose. See Question for maintainers.

Description

What problem is being solved?

Following the Docker guide, http://localhost:3000/playground never loads:

  • Every Docker example publishes -p 3000:3000, and the guide says port 3000 serves the Playground. The Playground has been disabled by default since v1.14.0, so nothing listens there.
  • When enabled without --playground-addr, it binds to 127.0.0.1:3000 inside the container, which a published port cannot reach.
  • The Playground page still says it is enabled on port 3000 by default, uses the deprecated --playground-port flag, and says only OIDC is unsupported (it now requires authn method none).
  • In current Chrome the embedded Playground fails with an error that looks like a CORS error but comes from Chrome's Local Network Access restriction (Playground cannot reach the local API in Chrome: iframe lacks allow="local-network-access" openfga#3318). The docs don't mention it.

How is it being solved?

This follows the maintainer direction from the #1371 review: stop enabling and publishing the Playground in the Docker examples, mark it deprecated and limited by browser restrictions, point readers to the OpenFGA CLI and VS Code extension, and remove the stray port 3000 mappings from the profiling examples. The Playground page keeps one opt-in section for readers who still want it.

What changes are made to solve it?

  • setup-openfga/playground.mdx
    • Deprecation warning: disabled by default since v1.14.0. It points to the CLI, the VS Code extension and .fga.yaml tests.
    • Limitations now say it only works with authn method none, and link to the new browser restrictions section.
    • New "Enabling the Playground" section: openfga run --playground-enabled, plus the Docker form docker run -p 8080:8080 -p 3000:3000 openfga/openfga run --playground-enabled --playground-addr 0.0.0.0:3000.
    • The different-port example uses --playground-addr 127.0.0.1:3001 and notes that --playground-port is deprecated.
    • New "Browser restrictions" section: the Chrome console error, why it isn't server CORS, and third-party storage sending users back to the create store dialog.
    • "Disabling the Playground" is reduced to two sentences. The heading stays because best-practices/running-in-production.mdx links to it.
    • Removed the roadmap sentence about rewriting the Playground, which contradicts the deprecation. Also removed the production-tools paragraph, which the warning now covers.
    • Existing heading IDs are unchanged.
  • setup-openfga/docker.mdx: removed -p 3000:3000 from every docker run example (including profiling) and the Playground port entry from the three Compose files. The step-by-step text now describes ports 8080 and 8081 only.
  • setup-openfga/configure-openfga.mdx: removed -p 3000:3000 from the profiler Docker example.
  • docs.json: refreshed the native deployment fingerprint.

Testing

Check Result
npm run check:mintlify Every step passes except test:mintlify-content-parity. Its 5 failures are the intended edits (listed below).
mint broken-links No broken links in the edited pages. The 4 it reports are already present in other pages (perform-check, contextual-tuples, relationship-queries).
openfga/openfga:v1.22.1 with --playground-enabled --playground-addr 0.0.0.0:3000 Log shows starting openfga playground on http://0.0.0.0:3000/playground; /playground returns 200.
Same, without --playground-addr Log shows 127.0.0.1:3000; the host request gets an empty reply.

Host ports were bound to 127.0.0.1 in these runs. That doesn't change the in-container behavior being tested. I haven't checked the pages in a local Mintlify render, so please use the Mintlify preview.

Question for maintainers

docs-site/README.md freezes page prose, headings and examples during the migration, and says intentional changes need a reviewed update to the contract rather than regenerated fixtures. I haven't touched the fixtures. The failures:

  • live-original-parity: body content of playground.mdx and docker-setup.mdx
  • live-foundations-parity: production prose of playground.mdx and docker-setup.mdx, and the changed bash example in configure-openfga.mdx

@Siddhant-K-code, how would you like the contract updated? I can add page-scoped expectations in this PR, following the parentChildHeadingCorrection pattern from e0d745e. Or, if you'd rather have a general mechanism for post-migration content edits (#1401 runs into the same check), I'll wait for that.

References

Review Checklist

  • I have clicked on "allow edits by maintainers".
  • I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
  • The correct base branch is being used, if not main
  • I have added tests to validate that the change in functionality is working as expected

🤖 Generated with Claude Code

…ocker examples

- playground: add a deprecation warning (disabled by default since
  v1.14.0), note it only works with authn method `none`, document
  enabling it (binary, Docker with --playground-addr 0.0.0.0:3000,
  different address), mark --playground-port deprecated, and add a
  browser restrictions section covering Chrome Local Network Access
  (openfga/openfga#3318) and blocked third-party storage.
- docker: remove -p 3000:3000 and the Compose playground port mappings
  from every example, and stop describing port 3000 as the Playground.
- configure-openfga: drop -p 3000:3000 from the profiler Docker example.
- refresh the native deployment fingerprint in docs.json.

Follows the maintainer's direction in #1371.

Co-Authored-By: Claude <noreply@anthropic.com>
@mintlify

mintlify Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
fga 🟢 Ready View Preview Nov 3, 2026, 2:50 PM

💡 Tip: Enable Automations to automatically generate PRs for you.

@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

CodeRabbit Verify

  • Run CodeRabbit Verify to test the changes in this pull request.

@cluelessno1

Copy link
Copy Markdown
Member Author

Leaving this PR as Draft for now as I need more clarity on the status of OpenFGA Playground before making the necessary changes.

This branch was successfully deployed

1 active deployment
staging - docs-site — 38bc4f0d Deployed Nov 3, 2026 by mintlify[bot]
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.

2 participants