Skip to content

feat: tabs navigation, unmaintained versioning, routing merge, AI overview#859

Merged
0xYankee-Raccoons merged 62 commits intomainfrom
feat/nav-restructure
Mar 27, 2026
Merged

feat: tabs navigation, unmaintained versioning, routing merge, AI overview#859
0xYankee-Raccoons merged 62 commits intomainfrom
feat/nav-restructure

Conversation

@0xYankee-Raccoons
Copy link
Copy Markdown
Collaborator

@0xYankee-Raccoons 0xYankee-Raccoons commented Mar 19, 2026

Summary

Restructures the entire docs navigation from anchors to a tabs + products layout with per-product versioning, introduces an "unmaintained" workflow for legacy API versions, merges Routing into Swap, rewrites the AI overview, cleans up API reference structure, rewrites the llms.txt generator, and cleans up Ultra V1/Swap V1 references across all maintained pages.

Changes

Navigation restructure (docs.json):

  • Root nav switched from anchors to tabs (maple theme)
  • Tab order: Docs, AI, Tool Kits, Changelog, Resources
  • "Docs" tab uses product selector with Get Started as first product entry
  • Tool Kits moved to its own tab (separate from API products)
  • Merged Ultra V1 + Metis into single "Swap V1" version (3 versions → 2)
  • Fix Price icon from "tag" to "dollar-sign"
  • Stripped style.css to essential overrides only

Routing merged into Swap:

  • Routing pages moved from standalone product to Swap V2 "Routing" group
  • Routing overview enriched with architecture, router availability by endpoint
  • DEX integration and RFQ integration pages moved to docs/swap/routing/
  • market-listing and token-listing deleted (no longer applicable in V2)
  • docs/routing/ deleted (replaced by docs/swap/routing)
  • Redirects added for all old /docs/routing/* paths
  • Dropped all Juno/Iris references (use Metis consistently)

Unmaintained pages workflow:

  • New "unmaintained" status distinct from "deprecated" (still works, not focus)
  • Version tags changed from "Legacy" to "Unmaintained" (Swap V1, Ultra V1, Trigger V1)
  • Warning callouts added to 48 pages pointing to replacements
  • llmsDescription prefixed with "UNMAINTAINED:" on all affected pages
  • Unmaintained versions excluded from llms.txt via version tag check
  • No deprecated: true used (avoids sidebar badge)
  • CLAUDE.md updated with full unmaintained pages workflow

AI overview rewrite:

  • Replaced Trade/Build split with environment-based tool guide (local vs hosted)
  • Two categories: Read the Docs (llms.txt, Skills, Docs MCP) and Execute Operations (CLI, Jupiter MCP)
  • Combined AI tab into single flat group

API reference cleanup:

  • Deleted 20 API reference overview pages (pure card navigation, no API details)
  • llms.txt generator uses OpenAPI spec YAML URLs for endpoint pages
  • Generator skips API ref pages without openapi field as safety net

Swap overview improved:

  • Added API Reference card group (GET /order, GET /build, POST /execute)
  • Added Learn More card group (Routing, Fees, Advanced, Migration)

llms.txt generator rewrite:

  • Rewrote nav walker from anchors to tabs/products/versions
  • Versions tagged "Unmaintained" skipped entirely
  • API ref pages link to OpenAPI spec YAML instead of .md
  • API ref overview pages excluded
  • 220 entries, 0 duplicates

Get Started cleanup (DEVREL-128):

  • Rewrote landing page as developer orientation (Why Jupiter, Products grid, Developer Resources, AI, Community)
  • Renamed sidebar label to "Welcome to Jupiter"
  • Grouped landing + setup pages under "Get Started" in Docs product nav
  • Removed "Building on Solana", added "Socials" section (Blog + Twitter/X)
  • Replaced repetitive "AI Tools" card with "API Reference"
  • Updated landing llmsDescription to match the current orientation structure

Tokens + Price index cleanup (DEVREL-130):

  • Unnested Tokens V2 and Price V3 paths
  • Rewrote Tokens overview/index content for clearer API orientation

Ultra V1 / Swap V1 reference cleanup (DEVREL-129):

  • Updated "Ultra Swap API" → "Swap API" in get-started, resources, tool-kits, and AI pages
  • Updated links from /docs/ultra to /docs/swap/order-and-execute
  • Merged "Ultra Swap Order" + "Ultra Swap Data" into single "Swap" row in ai/skills.mdx
  • Updated example snippets and curl examples in ai/llms-txt.mdx
  • Fixed dead link /docs/ultra/add-fees-to-ultra → /docs/swap/fees in tool-kits
  • Dropped "Ultra Swap API" from referral-program supported list
  • Removed old Ultra/Metis rows from labelling tables in brand-kit and legal
  • Added Developer Platform callout to all 7 portal pages
  • Cleaned up llmsDescription fields across all maintained pages
  • Plugin pages intentionally kept as "Ultra Swap" (replicates FE product)

API versioning (Next.js-style):

  • Latest version has no prefix in URL
  • Legacy versions retain prefix
  • Swap: Swap V2 (Latest) + Swap V1 (Unmaintained)
  • Trigger: Trigger V2 (Latest) + Trigger V1 (Unmaintained)
  • File moves + redirects for all old /v2/ URLs

Key decisions

  1. Tabs + maple theme for root navigation
  2. Docs tab with Get Started as first product (smooth landing)
  3. Tool Kits as separate tab (not API products)
  4. Swap V1 merges Ultra + Metis (cleaner UX)
  5. Routing merged into Swap (core to swap, not standalone)
  6. Unmaintained != Deprecated: excluded from llms.txt via version tag
  7. No custom UI code: decided against fighting Mintlify's DOM
  8. API ref overview pages deleted: pure navigation bloat for both humans and LLMs
  9. OpenAPI spec URLs in llms.txt: LLMs get the actual spec, not rendered HTML
  10. AI overview by environment: local agents use CLI+Skills, hosted use MCP
  11. Plugin keeps "Ultra Swap": replicates the frontend Ultra Swap product
  12. Portal pages get Developer Platform callout: content kept as-is until new platform launches

Linear Issues

  • DEVREL-115 - Parent: tabs navigation with unmaintained versioning
  • DEVREL-116 - Revert custom sidebar nesting (Done)
  • DEVREL-125 - Standardise unmaintained pages (Done)
  • DEVREL-126 - Combine AI tools into 1 group (Done)
  • DEVREL-127 - Merge routing into swap (Done)
  • DEVREL-123 - Post-restructure cleanup parent (In Review)
    • DEVREL-128 - Rework Get Started as developer orientation (Done)
    • DEVREL-129 - Clean up Ultra V1/Swap V1 references (In Review)
    • DEVREL-130 - Rework Tokens V2 index page (Done)

Follow-up issues (separate PRs)

  • DEVREL-121 - Add Jupiter CLI changelog entry
  • DEVREL-122 - Add llmsDescription to API ref pages (~97 pages)
  • DEVREL-131 - Redirect conflict detection script

Checklist

  • node generate-llms-from-docs.js runs clean
  • mint broken-links passes
  • docs.json valid JSON
  • All V1 pages accessible via version selector
  • Old /v2/ URLs redirect correctly
  • Old /docs/routing/* URLs redirect correctly
  • Unmaintained pages have Warning callout + UNMAINTAINED llmsDescription
  • AI section matches environment-based structure
  • .claude/rules/decisions.md updated
  • Get Started pages cleaned up
  • Nav type decided: tabs + maple
  • CLAUDE.md updated with unmaintained pages workflow
  • Routing merged into Swap with redirects
  • API ref overview pages removed
  • llms.txt uses OpenAPI spec URLs
  • Ultra V1/Swap V1 references cleaned up in maintained pages
  • Developer Platform callout on all portal pages
  • Labelling tables updated in brand-kit and legal

Generated with Claude Code

0xYankee-Raccoons and others added 2 commits March 19, 2026 16:09
Delete dropdown.js and remove all dropdown-related CSS from style.css.
The sidebar now shows all items by default on both desktop and mobile.

This reverts the changes from PRs #811, #812, and #813.

Closes DEVREL-116

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename "Docs" tab to "Products". Each product section now includes
its docs + API reference in one sidebar. Removes standalone "Guides",
"API Reference", and "Tool Kits" tabs (8 tabs to 6).

- Swap: docs + API ref (V2 only)
- Tokens & Price: combined as one product
- Lend, Prediction, Trigger, Recurring, Portfolio, Send, Studio:
  docs + API ref colocated
- Tool Kits: own product section (Plugin, Wallet Kit, Referral)
- V1/legacy pages hidden from nav entirely (files preserved)
- Guides removed from nav (files preserved)

No file moves, no URL changes, no redirects. Navigation only.

Phase 1 of DEVREL-115. Known trade-off: llms.txt still generates
from file paths, not nav structure. Phase 2 will address this by
consolidating file paths to match the nav.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Keep the extended dropdown height for the Products menu (80vh mobile,
600px desktop) without the top-3 collapse logic that was removed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add CSS grid to display Products menu in two columns on desktop:
- Left: Swap, Tokens & Price, Lend, Perps, Trigger, Recurring, Prediction
- Right: Portfolio, Send, Studio, Lock, Routing, Tool Kits

Uses grid-template-rows: repeat(7, auto) with grid-auto-flow: column
to split 13 items into 7+6 across two columns. Mobile stays single column.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add min-width: 420px to the 2-column dropdown so items like
"Tokens & Price" and "Tool Kits" don't wrap to a second line.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Pattern A: remove unnamed " " groups, put overview in first named group
- Remove API ref overview pages from nav (redundant navigation hubs)
- Add swap widget guide to Swap, token/price guides to Tokens & Price,
  prediction guide to Prediction

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0xYankee-Raccoons and others added 4 commits March 23, 2026 12:23
- Unnest V2 subgroup in Tokens, show pages at top level
- Combine About Price and Price V3 into single doc
- Remove docs/price/v3 from nav (content merged into index)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Latest Swap docs no longer need /v2/ in the URL path - only legacy
versions (V1) retain their version prefix. Updates all internal links
across swap, ultra, and API reference docs.

- Move 14 files: docs/swap/v2/* -> docs/swap/*, api-reference/swap/v2/* -> api-reference/swap/*
- Update /docs/swap/v2/ -> /docs/swap/ links in 40 files
- Update /api-reference/swap/v2/ -> /api-reference/swap/ links

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace tabs/menu navigation with anchors as root element.
Each product is a separate entry in the product switcher within
a "Products" anchor. Non-product sections (Get Started, AI,
Changelog, Resources) are persistent top-level anchors.

- Root navigation: anchors (Helius-style persistent sidebar nav)
- Products anchor: contains all 13 products with product switcher
- Swap: V2 (Latest) + V1 (Legacy with Ultra and Metis)
- Trigger: Trigger V2 (Latest) + Trigger V1 (Legacy)
- Global anchors: Dashboard (external), AI, Changelog, Resources
- Theme: willow
- Add redirects for old /docs/swap/v2/ URLs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Update style.css with custom CSS (product/version selector experiments, commented out)
- Rename updates/index.mdx to changelog/index.mdx
- Update index.mdx landing page

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Standardise with Swap: latest API version has no version prefix in URL,
only legacy (V1) retains /v1/ prefix.

- Move 11 files: api-reference/trigger/v2/* -> api-reference/trigger/*
- Rename v2.mdx overview to index.mdx
- Update internal links in trigger overview pages
- Add redirects for old /api-reference/trigger/v2/ URLs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@0xYankee-Raccoons 0xYankee-Raccoons changed the title feat: restructure nav to product-centric layout feat: product-centric nav with versioning and new theme Mar 23, 2026
- Fix missing comma in Price page fetch code example
- Fix "elimate" typo in Price page limitations
- Rewrite casual V3 comparison to match docs style guide
- Fix llms generator to handle anchors-based nav structure
- Update llms generator for updates/ → changelog/ rename

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add api-reference/ to generator folders, remove openapi-spec/
  (use per-endpoint MDX frontmatter instead of generic YAML titles)
- Add URL-based deduplication to prevent duplicate entries from
  pages referenced in multiple nav locations
- Add depth guard to prevent stack overflow in processSection
- Add missing description frontmatter to 11 trigger V2 API ref files
- Fix generator for updates/ → changelog/ folder rename
- Update AI section description to remove stale ecosystem reference

Before: 302 entries with 89 duplicates (24x prediction, 12x trigger, etc.)
After: 224 unique entries, 0 duplicates

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the file-scan → nested-tree → sort-by-nav approach with a
direct nav-tree walker (anchors → products → versions → groups → pages).
Eliminates buildNestedStructure, sortNestedData, findValueForApiReference
and all YAML processing.

Fixes:
- Ghost headings from deprecated Swap V1 and Recurring API ref pages
- "Ai" heading (now correctly "AI" from nav)
- Products now group docs + guides + API ref together
- Empty sections auto-removed

Also merges main: adds ai/cli page, Price API blog post, removes
ai/ecosystem (deleted in #857), and updates nav accordingly.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Flatten Swap V1 Legacy nesting: drop About/Guide/API Reference
  sub-groups from Ultra and Metis, reducing from 5 to 3 levels
- Consistent group naming: drop "API" suffix from first groups
  (Swap API → Swap, Trigger API → Trigger, etc.)
- Separate Tokens & Price into standalone products
- Combine thin products (Portfolio, Send, Studio, Lock) into "More"
- Add Guides index to Get Started anchor for cross-cutting discovery
- Regenerate llms.txt (237 entries, 0 duplicates)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Ultra and Metis were separate APIs - they each get their own version
entry in the picker instead of being grouped under one Swap V1.
Also splits docs/API ref into separate groups within each version.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0xYankee-Raccoons and others added 2 commits March 26, 2026 21:50
- Move docs/tokens/v2/* to docs/tokens/ (2 files)
- Move api-reference/tokens/v2/* to api-reference/tokens/ (7 files)
- Move api-reference/price/v3/price to api-reference/price/index (1 file)
- Rewrite docs/tokens/index.mdx as developer-focused overview
- Consolidate organic-score and token-tag-standard into tokens index
- Delete docs/price/v3.mdx (duplicate of index)
- Add redirects for all old v2/v3 paths
- Update internal links across guides, skills, and docs pages

Fixes DEVREL-130

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…escription

- rename get-started sidebar title to "Welcome to Jupiter"
- group pages under "Get Started" in sidebar navigation
- replace repetitive "AI Tools" card with "API Reference"
- remove "Building on Solana" and add a socials section (Blog, Twitter/X)
- update index llmsDescription to match current page structure
- Replace "Ultra Swap API" with "Swap API" in get-started, resources,
  tool-kits, and AI pages; update links from /docs/ultra to /docs/swap
- Add Developer Platform callout to all 7 portal pages
- Update labelling tables in brand-kit and legal
- Clean up llmsDescription fields and regenerate llms.txt

Refs: DEVREL-129

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix critical bug: walkTopLevel didn't handle menu-based nav, causing
  entire Docs tab (all API products) to be excluded from llms.txt
  (47 → 218 entries)
- Merge PRODUCT_SUMMARIES and TAB_SUMMARIES into single SECTION_SUMMARIES
- Add console.warn for skipped API ref pages without openapi field
- Update decisions.md nav entry: anchors → tabs, 3 swap versions → 2,
  willow → mint theme, add routing merge and menu structure details

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Replace generic llmsDescription on 7 Ultra API ref pages with
  specific endpoint descriptions prefixed with UNMAINTAINED
- Update CLAUDE.md unmaintained workflow: pages are removed from nav
  (not kept under version selectors), accessible via direct URL only

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- /api-reference/tokens → /api-reference/tokens/search (no index page)
- /docs/tokens → /docs/tokens#organic-score for direct navigation (2 places)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@0xYankee-Raccoons 0xYankee-Raccoons merged commit 50e8796 into main Mar 27, 2026
4 checks passed
@0xYankee-Raccoons 0xYankee-Raccoons deleted the feat/nav-restructure branch March 27, 2026 07:44
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