Skip to content

Pages & Routes

Each page in the Rugdrome frontend is a Next.js 13 App Router route. Routes are organized under frontend/src/app/.

Route Structure

Every route typically contains:

  • layout.tsx — Route-level metadata and shared layout.
  • page.tsx — The main page component.

Page Descriptions

RoutePageDescription
/page.tsxLanding page with protocol overview and JSON-LD structured data.
/swappage.tsxToken swap interface with quote and slippage controls.
/liquiditypage.tsxAdd, remove, and zap liquidity into Rugdrome pairs.
/votepage.tsxGauge voting and bribe claiming.
/vestpage.tsxRUGD locking and veNFT management.
/rewardspage.tsxGauge rewards and bribe collection.
/bribepage.tsxAdd external rewards to gauges.
/whitelistpage.tsxManage token whitelist entries.
/faucetpage.tsxTestnet token faucet.
/legalpage.tsxRisk and legal disclosures.

Metadata

Each layout.tsx exports a Metadata object with:

  • title — Page title shown in the browser tab.
  • description — Short description for search engines and social cards.
  • openGraph — Open Graph image, title, and description.
  • twitter — Twitter card metadata.
  • alternates.canonical — Canonical URL pointing to https://rugdrome.com/<route>.

Root Layout

frontend/src/app/layout.tsx provides the global layout, including:

  • Font loading (Inter, Druk, Monument Extended)
  • wagmi/RainbowKit provider
  • Theme and metadata configuration
  • JSON-LD WebSite and Organization structured data

The main navigation is defined in frontend/src/components/layout/Header.tsx and links to the core routes: Swap, Liquidity, Vote, Vest, Rewards, Bribe, and Whitelist.

Released under the GNU AGPL v3 License.