chore: consolidate docs and developer docs using turborepo - #493
Conversation
* fix: formatting all files expect md files * fix: format dev tool section
[SILO-952] feat: add OAuth scopes support docs
[SILO-995] chore: add missing scope docs for agent runs
* fix: canonical links * fix: transform page data
* feat: improve SEO with keywords and updating descriptions * fix: inject keywords to meta tags
* fix: formatting for all pages * fix: formatting * fix: formatting * fix: formatting * fix: formatting * fix: formatting * fix: replace preview branch with master
[SILO-1018] chore: add assets scope definition + update bot token authorize flow
* feat: add docker compose setup * fix: formatting * fix: sidebar item change * fix: layout change * fix: version update * fix: minor fixes * fix: formatting * fix: formatting * review fixes * minor fix * minor fix * removed javascript and python templats * modified api reference style * fix: content ordering * fix: formatting --------- Co-authored-by: danciaclara <claradancia20@gmail.com>
* Modified the Build and extend section * added redirect for deleted page * coderabbit fixes * Moved Claude Code under MCP Server section * minor fix * formatting fixes * formatting fixes
* Plane AI for Commercial Edition * formatting fixes * formatting fixes
… Compose and Kubernetes, including version updates for setup commands.
…alternative methods, including Coolify, Portainer, Docker Swarm, and Podman Quadlets.
fix: update darkmode brand color to update on code blocks
fix: update dark mode brand color with better accessibility
Show Fips deployment guide
Add plane-pi-commercial, node-runner-commercial, proxy-commercial, and live-exporter to the airgapped image clone list and compose reference. Update iframely to v2.5.3 and bump default APP_RELEASE_VERSION to v3.1.0. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…erence Add worker, beat-worker, migrator, importer-worker, automation-consumer, webhook-consumer, and outbox-poller to the compose image reference example. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
docs(airgapped): add missing v3.1.0 services and update image list
Rewrite the MCP server setup guide around the hosted OAuth endpoint with per-client setup (Claude, Claude Code, ChatGPT, Codex, Cursor, VS Code, Windsurf, Zed, Antigravity, mcp-remote), correct the access-token headers (Authorization: Bearer + x-workspace-slug), and add security, permissions, upgrading, troubleshooting and FAQ sections. Rebuild the tool reference for the 28 action-dispatch tools (183 actions, 169 retired-name aliases, 7 unmappable) from the v0.3.0 tool declarations, and update the self-hosting guide with the correct OAuth callback URIs, new environment variables (PLANE_OAUTH_ALLOWED_REDIRECT_URIS, LOG_USER_INFO, Redis/ElastiCache options) and logging notes.
- Note that OAuth app registration is Cloud/Commercial Edition only and point Community Edition users to stdio mode - Use the Windows-safe mcp-remote header format (no spaces around the colon, header value in env) and mention MCP_REMOTE_CONFIG_DIR before clearing ~/.mcp-auth - Reconcile the retired-name counts (169 aliases + get_pql_reference + 7 unmappable = 177) - Keep the API key out of the curl command line - Add privacy guidance for the opaque user ID and workspace slug in logs - Serve the Cursor and VS Code install badges from /images/mcp/
docs: sync MCP server docs to plane-mcp-server v0.3.0
Adds a split button on the page-title row of every doc page (below the heading on small screens): - Copy page: copies the page's raw Markdown to the clipboard - View as Markdown: opens the page's .md in a new tab - Open in ChatGPT / Open in Claude: hands the .md URL to the AI tool Uses the per-page .md mirror buildEnd() already emits (version tokens resolved), so no config or server changes. Pages can opt out with copyPage: false (the home page does).
…th docs Unify the look of developers.plane.so and docs.plane.so: - Move the theme into docs/.vitepress/theme/plane/ — the shared Plane docs theme, byte-identical with makeplane/docs (tokens, fonts, PlaneHeader, layout, Card/CardGroup/Tags, Copy page menu, cookie consent, createPlaneTheme()). theme/index.ts is now a thin createPlaneTheme() call with this site's branding + API components; site.css keeps the home hero. - Doc headings now render in Inter (VoidZero's APK Protocol was leaking through --font-heading); ::: details blocks are neutral; [!CAUTION] is styled; --vp-c-brand-2 is the hover color; hero-image corner variants render correctly. - PlaneHeader is generalized: header buttons come from nav items flagged planeButton: "primary" | "secondary" (was a docs.plane.so regex) and the mobile wordmark comes from options. Drop PlaneSearchButton.vue + its Vite alias (dead: the vendored VPNavBarSearch imports the button relatively) and the inert header data-theme head script. - theme-color meta #3b82f6 → #006399, editLink → master, home prev/next: false. - Toolchain: lucide-vue-next ^0.577.0, engines node >=24, CI node 24; prettier override for plane/** (printWidth 100, trailingComma all) so the shared files are byte-identical under docs' oxfmt too. - Guards: check:theme-sync (sha256 diff of plane/ against makeplane/docs) wired into CI; tsconfig/env.d.ts point at the shared type shims. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…r-docs
Unify the look of docs.plane.so and developers.plane.so:
- Add docs/.vitepress/theme/plane/ — the shared Plane docs theme, byte-identical
with makeplane/developer-docs (tokens, fonts, PlaneHeader, layout, Card/
CardGroup/Tags, Copy page menu, cookie consent, createPlaneTheme()).
theme/index.ts is now a thin createPlaneTheme({ brand }) call.
- Header: replace the stock VoidZero header + "Sign in" DOM relocation with the
shared PlaneHeader (84px); add a "Developer Docs" button (mirror of dev-docs'
"Plane Docs"). Nav items opt in via planeButton: "primary" | "secondary".
- Tokens: dev-docs text/border palette, colored callouts (+ [!CAUTION],
neutral ::: details), --vp-c-brand-2 as hover, Inter for headings via
--font-heading, buttons via --vp-button-*; drop the Tailwind dark-variant
override, FOUC-guard script and appearance: "dark" (follows system now).
- Cards: dev-docs look with a superset Card API (title/icon/href|link/
description|slot/cta|link-text) and the merged 18-icon brand map.
- Cookie consent banner with GA Consent Mode v2 defaults; PostHog opts out until
Accept. Plausible / Common Room unchanged.
- theme-color meta, editLink → master, home page aside: false.
- Toolchain: VitePress 2.0.0-alpha.16 (voidzero peer requirement), vue/lucide/
@types/node/typescript aligned, pnpm overrides + allowBuilds mirrored, explicit
tailwind deps dropped (owned by @voidzero-dev/vitepress-theme).
- Guards: check:types (tsconfig shared with dev-docs) and check:theme-sync
(sha256 diff of plane/ against the sibling repo) — both wired into CI.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Pure rename of the site (docs/, package.json, vercel.json, .env.example) in preparation for the monorepo; the root tsconfig.json shim is dropped. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…docs/ Pure rename of every tracked file of makeplane/developer-docs@d978c91 so git log --follow and git blame keep working after the monorepo merge. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Source: https://github.com/makeplane/developer-docs @ d978c91 (847 commits, branch docs/unify-theme = PR #316). developers.plane.so now builds from apps/developer-docs/. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…po root CI workflow, formatter config, gitignore, lockfile, pnpm workspace settings and the repo-level README/CONTRIBUTING now live at the monorepo root. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- root package.json (turbo/oxfmt scripts), pnpm-workspace.yaml with
packages + a shared dependency catalog + the union of both repos'
overrides, turbo.json, tsconfig.base.json (${configDir} paths)
- apps become @plane/docs and @plane/developer-docs (catalog: deps,
fixed dev/preview ports, per-app tsconfig.json)
- single root pnpm-lock.yaml; root .gitignore/.oxfmtrc.json cover
every app
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The former docs/.vitepress/theme/plane/ folder (kept byte-identical across the two repos) becomes the workspace package @plane/docs-theme, consumed as source by both apps via "@plane/docs-theme": "workspace:*". Moved from the developer-docs side to keep its history; the docs copy, manifest.json and check-theme-sync.mjs are deleted. - theme owns its runtime deps (voidzero base theme, lucide, medium-zoom, tabs) and pulls its ambient types in via triple-slash references from src/index.ts - Tailwind root stays inside the package; the redundant app-wide @source glob is dropped (Vite root = each app's docs/, which Tailwind scans automatically) - apps: import from @plane/docs-theme, one-line env.d.ts, resolve.dedupe for vue + the base theme, developer-docs drops lucide from optimizeDeps.include Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Mechanical one-time reformat (prettier @ printWidth 120 / es5 commas → the repo-wide oxfmt defaults @ 100 / all). No content changes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
One CI workflow (oxfmt check; turbo check:types + build with a cached .turbo dir; pnpm dedupe --check) replaces the two per-repo workflows and their theme-sync jobs. editLink patterns now target apps/docs/docs and apps/developer-docs/docs in makeplane/docs. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- root README: package map, quick start (turbo scripts), layout, history note - root CONTRIBUTING: single guide (branch from master — the old one pointed at a non-existent preview branch), where things live, writing guidelines from both former guides - root AGENTS.md: monorepo rules (theme in packages/theme, catalog, one lockfile, per-app vercel.json); apps/docs and apps/developer-docs get app-scoped AGENTS.md files (+ CLAUDE.md symlinks) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important Review skippedToo many files! This PR contains 634 files, which is 534 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. Usage-priced reviews support at most 300 files. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (175)
📒 Files selected for processing (634)
You can disable this status message by setting the 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. Comment |
Summary
Folds
makeplane/developer-docsinto this repo and turns it into a pnpm-workspace + Turborepo monorepo:@plane/docsapps/docs@plane/developer-docsapps/developer-docs@plane/docs-themepackages/themeThis replaces the "byte-identical
plane/folder in two repos +check-theme-sync" arrangement from #492 / makeplane/developer-docs#316 with a single source of truth: one lockfile (sharedcatalog:versions), one formatter (oxfmt), one CI workflow, and theme changes that land in both sites atomically.No visual or behavioral change to either site — the built CSS for docs.plane.so is byte-for-byte the same size/rule set as the #492 preview; developers.plane.so differs only by tailwind/docsearch patch versions that its old lockfile had resolved differently.
Stacked on #492 (this branch is cut from
docs/unify-theme) and imports developer-docs at the #316 tip.Commits (each reviewable on its own)
chore(docs): move the docs.plane.so app intoapps/docs/— pure renameschore: merge developer-docs history intoapps/developer-docs/— a pure-rename commit on the developer-docs lineage +git merge --allow-unrelated-histories, sogit log --follow/git blamekeep workingchore(developer-docs): drop per-repo tooling superseded by the rootchore: bootstrap pnpm workspace + Turborepo (turbo.json,pnpm-workspace.yamlpackages + catalog + merged overrides,tsconfig.base.json, per-apppackage.json/tsconfig.json, single lockfile)refactor(theme): extract the shared theme intopackages/theme(moved from the developer-docs side to keep its history;manifest.json/check-theme-sync.mjsdeleted; apps import@plane/docs-theme)style: one-time oxfmt reformat ofapps/developer-docs(mechanical, 224 files)ci: single workflow (oxfmt ·pnpm dedupe --check·turbo run check:types build); editLinks →apps/<app>/docs/:pathdocs: root README / CONTRIBUTING / AGENTS.md for the monorepo; per-app AGENTS.mdVerification
pnpm check(format + 3 type-checks) andpnpm buildgreen; secondpnpm buildisFULL TURBO; editing a theme file re-hashes both appsvue/vitepress/@voidzero-dev/vitepress-theme(pnpm dedupe --checkclean);VITE_*reaches builds under turbo's strict env (shell and per-app.env)pnpm dev→ :5173 / :5174) render as before; theme HMR hits both; console cleangit log --follow apps/developer-docs/docs/api-reference/introduction.md,… packages/theme/src/components/PlaneHeader.vueandgit blameon imported files show the original commitsThis branch carries the developer-docs history merge. Squash or rebase would collapse/replay 848 commits and lose it. Please disable squash/rebase for this PR (or restrict merge methods to "merge commit" while it lands).
Not in this PR — needs repo/Vercel admins before merging
apps/docs/apps/developer-docs, keep "Include source files outside of the Root Directory" enabled, keep the framework preset (VitePress; buildpnpm build, outputdocs/.vitepress/dist); connect the developers.plane.so project tomakeplane/docs. The Vercel preview for this PR will fail until the docs project's Root Directory isapps/docs.makeplane/developer-docs(gh pr diff <n> --patch | git am -3 --directory=apps/developer-docs), transfer its 4 open issues, then archive that repo with a README pointer.LICENSEfile (docs'package.jsonsays MIT, developer-docs' says Apache-2.0 — neither repo has one).turbo run buildas build command), dedupe the font binaries into the theme package, oxfmt version bump.🤖 Generated with Claude Code