Skip to content

feat: flip to the v3 information architecture#2702

Open
TC-MO wants to merge 15 commits into
masterfrom
ia-v3-flip
Open

feat: flip to the v3 information architecture#2702
TC-MO wants to merge 15 commits into
masterfrom
ia-v3-flip

Conversation

@TC-MO

@TC-MO TC-MO commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Switches the docs from the /platform/* URL structure to the v3 information architecture: topic-first sections at the site root, routeBasePath dropped to /, and 301 redirects covering old URLs.

Review by commit

The flip is categorized by concern; commits 1-2 are mechanical (bulk moves and link rewrites) and can be skimmed, the judgment lives in 3-6. Commits 7-10 are refinements from reviewing the live preview.

  1. restructure into the v3 IA - the moves: console and collaboration fold into Account, schedules and monitoring move under Actors > running; adds the Account hub and the Get Started section. Check the destinations make sense.
  2. drop the /platform prefix from internal links - 157 files, move-aware (relocated sections point at their new paths). Bulk rewrite; the OpenAPI source and React pages are included alongside content.
  3. flip routeBasePath + v3 navbar - the actual routing switch, the nav items, Open source moving from nav dropdown to footer, and per-section sidebars. The core change to scrutinize.
  4. scope theme doc-content and search to the v3 roots - DocItemContent allowed paths and the SearchBar instance check.
  5. remove the platform landing page - the site root is the new entry point.
  6. redirect /platform/* URLs - nginx catch-all plus structural pre-rules for the relocated sections.
  7. label v3 section overviews - the Actors, Storage, Proxy, and Integrations hub pages now read "Overview" and sort first.
  8. footer dedup - drop the duplicate Open source link now that there is a dedicated Open source column.
  9. split Get Started into Agent onboarding and a Build group - move "Apify for AI agents" out of Integrations into Get Started, and group the four build pages under an expanded Build category.
  10. remove the duplicate quick start tree - it duplicated the new Get Started build pages; its unique Technology stack intro moved into the Actor development overview.

Verification

  • Build green at the tip, 0 broken links. The broken-anchor warnings are pre-existing and non-blocking (onBrokenAnchors: 'warn').

  • nginx double-hop cleanup - stripping /platform/ from the ~135 existing rule targets is a separate post-flip PR; those URLs still resolve via the catch-all in the meantime, just with an extra hop.

TC-MO added 6 commits June 29, 2026 13:52
Relocate sections to match the v3 IA:
- console pages fold into Account (/account/*), console index -> /account/console
- collaboration folds under Account (/account/collaboration/*),
  organization_account renamed to organization
- schedules and monitoring move under Actors > running (/actors/running/*)
- schedule and monitoring images move alongside their pages

Add the Account hub (/account) and the opinionated Get Started section
(/get-started: locally, web-ide, build-with-ai, develop-ai-agents).
With routeBasePath moving to root, rewrite /platform/* references to /*
across authored content, the OpenAPI source components (charge.yaml,
Dataset.yaml, ActorDefinition.yaml, datasetParameters.yaml), and the
custom React pages. Move-aware: links into relocated sections point at
their new v3 paths (e.g. /account/*, /actors/running/*).
- docusaurus.config.js: routeBasePath 'platform' -> '/'
- config.js: swap navbar.items to the v3 set (Get started, Actors,
  Storage, Proxy, Account, Integrations, Limits, Security | Academy,
  APIs, SDKs & CLI); move Open source from a nav dropdown to a footer column
- sources/platform/sidebars.js: per-section autogenerated sidebars
Point DocItemContent's allowed paths and the SearchBar instance check at
the eight v3 section roots instead of the single /platform tree.
The docs root is now the entry point (src/pages/index.tsx); the old
/platform index page collided with slug: / after the routeBasePath flip.
Add an nginx block with a /platform/* -> /* catch-all plus structural
pre-rules for relocated sections (console -> account, collaboration,
schedules/monitoring -> actors/running, quick-start -> get-started,
airtable console-integration soft-land, /platform root). console/store
keeps its URL pending the open store-page decision.

Stripping /platform/ from existing rule targets (double-hop cleanup) is
left to a follow-up PR; those URLs still resolve via the catch-all.
@TC-MO TC-MO self-assigned this Jun 29, 2026
@TC-MO TC-MO added documentation Improvements or additions to documentation. t-docs Issues owned by technical writing team. labels Jun 29, 2026
@apify-service-account

apify-service-account commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

✅ Preview for this PR (commit 36e3a4f) is ready at https://pr-2702.preview.docs.apify.com (see action run).

@apify-service-account

Copy link
Copy Markdown
Contributor

Important

Action required@TC-MO please coordinate this docs PR with the Python API client PR linked below.

Because this PR modifies the OpenAPI specification, the generated models in apify-client-python must be regenerated to stay in sync. This has already been done automatically:

A companion PR has been opened in apify-client-python with the regenerated models: apify/apify-client-python#905

  • Please make sure to review and merge both PRs together to keep the OpenAPI spec and API clients in sync.
  • You can ask for review and help from the Tooling team if needed.

TC-MO added 9 commits June 29, 2026 14:19
The Actors, Storage, Proxy, and Integrations hub pages kept their old
single-sidebar positions and had no sidebar_label, so they showed the
section name and (for Integrations) sorted mid-list. Add
sidebar_label: Overview and sidebar_position: 0 to match Account and
Get started.
The dedicated Open source footer column makes the Open source link in
the Other column redundant.
Now that Get Started covers two journeys, give them structure:
- move "Apify for AI agents" from Integrations into Get Started as the
  top-level "Agent onboarding" page (the consume-Apify path)
- group the four build pages (Local development, Web IDE, Build with AI,
  Develop AI agents) under an expanded "Build" category (the build-on-Apify
  path); they keep their flat /get-started/* slugs

The page moved out of Integrations, so redirect its live URL and update
inbound links. The directory is named building/ because a bare "build"
is gitignored (Docusaurus output dir).
The quick start pages duplicated the new Get Started build pages (same
content, different URLs). Delete the tree and migrate its unique
"Technology stack" intro into the Actor development overview, which also
gives that section a proper opening now that quick start no longer leads
it. Repoint inbound links to Get Started; old /platform quick-start URLs
already redirect there via nginx.
The header-assertion smoke test used /platform/proxy/datacenter-proxy as
its sample page; after the flip that 301s to /proxy/datacenter-proxy, so
the trailing-slash, Content-Type, and .md-alternate assertions now target
the v3 URL.
Dropping the /platform prefix shortened link cells in two tables, pushing
their closing pipes out of alignment (markdownlint MD060). Re-pad to match.
Vale flagged them once the flip's link rewrite brought these files into
the changed-file set.
The repo kept pre-/platform aliases like `^/proxy$ -> /platform/proxy` and
`^/storage/dataset$ -> /platform/storage/dataset` from before the docs used
a /platform prefix. The flip drops that prefix, so those source paths are
now the canonical v3 URLs and serve directly. Combined with the new
`/platform/* -> /*` catch-all they formed 301 loops
(`/proxy -> /platform/proxy -> /proxy`), which broke the header-assertion
smoke test (`/proxy/datacenter-proxy` no longer served its page).

Remove the 19 aliases whose path now exists as a v3 route (one targeted an
anchor: `/actors/running/input-and-output`). /monitoring and /schedules are
kept - their pages moved under /actors/running, so they still redirect.
Verified with a redirect-chain simulator: 0 loops and 0 gaps across all 347
literal redirect sources and the 165 production /platform URLs.
The smoke test in checkNavHeaders.mjs sampled hardcoded /platform/*.md
pages; after the flip those 404 or live at the v3 path. Repoint them and
drop /platform.md (the platform root landing is gone; its key combo is
already covered by /academy, /api, /legal).

In the v3 per-section sidebars a section landing (/actors, /storage,
/integrations) is the first item and a sibling link, so it carries only
`next` - no `previous` (nothing before it) and no `children` (its
sub-pages are siblings, not nested). The `children` combo stays covered by
/actors/running and /api/v2. Verified against locally generated headers.
@TC-MO TC-MO requested a review from barjin June 29, 2026 14:26
@TC-MO TC-MO marked this pull request as ready for review June 29, 2026 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation. t-docs Issues owned by technical writing team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants