Home / File/ page.tsx — ui Source File

page.tsx — ui Source File

Architecture documentation for page.tsx, a tsx file in the ui codebase. 11 imports, 0 dependents.

File tsx DocumentationAtlas Changelog 11 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  ef39b9e0_8e38_1611_3005_265d1df55834["page.tsx"]
  53860de0_4d86_dc1d_c85a_07c01f0d1a07["index.tsx"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 53860de0_4d86_dc1d_c85a_07c01f0d1a07
  51df4696_2d55_c011_75b2_368b4f56279e["RootComponents"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 51df4696_2d55_c011_75b2_368b4f56279e
  9c1a1e1b_87f8_29d5_c12d_e83869cf94e4["next"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 9c1a1e1b_87f8_29d5_c12d_e83869cf94e4
  3eb36dd7_f51a_1431_02e2_7abafe315718["image"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 3eb36dd7_f51a_1431_02e2_7abafe315718
  ba3d44f3_7b34_f9cc_6283_44817785c0df["link"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> ba3d44f3_7b34_f9cc_6283_44817785c0df
  ee1bd2ee_dc29_449d_093b_3c77e83b3561["announcement"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> ee1bd2ee_dc29_449d_093b_3c77e83b3561
  a02ed158_ee1f_bcce_2ef6_260908f74dd9["examples-nav"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> a02ed158_ee1f_bcce_2ef6_260908f74dd9
  92027577_46c9_9cf9_86f6_c32f42e44e04["page-header"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 92027577_46c9_9cf9_86f6_c32f42e44e04
  f910415c_c3ff_91b6_b6c2_62b5349d5a9b["page-nav"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> f910415c_c3ff_91b6_b6c2_62b5349d5a9b
  67800f29_74f5_e4fd_f69d_c0bb44ef1ca5["theme-selector"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 67800f29_74f5_e4fd_f69d_c0bb44ef1ca5
  57e86e45_ac6e_7278_be08_9092724e8401["button"]
  ef39b9e0_8e38_1611_3005_265d1df55834 --> 57e86e45_ac6e_7278_be08_9092724e8401
  style ef39b9e0_8e38_1611_3005_265d1df55834 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { type Metadata } from "next"
import Image from "next/image"
import Link from "next/link"

import { Announcement } from "@/components/announcement"
import { ExamplesNav } from "@/components/examples-nav"
import {
  PageActions,
  PageHeader,
  PageHeaderDescription,
  PageHeaderHeading,
} from "@/components/page-header"
import { PageNav } from "@/components/page-nav"
import { ThemeSelector } from "@/components/theme-selector"
import { Button } from "@/registry/new-york-v4/ui/button"

import { RootComponents } from "./components"

const title = "The Foundation for your Design System"
const description =
  "A set of beautifully designed components that you can customize, extend, and build on. Start here then make it your own. Open Source. Open Code."

export const dynamic = "force-static"
export const revalidate = false

export const metadata: Metadata = {
  title,
  description,
  openGraph: {
    images: [
      {
        url: `/og?title=${encodeURIComponent(
          title
        )}&description=${encodeURIComponent(description)}`,
      },
    ],
  },
  twitter: {
    card: "summary_large_image",
    images: [
      {
        url: `/og?title=${encodeURIComponent(
          title
        )}&description=${encodeURIComponent(description)}`,
      },
    ],
  },
}

export default function IndexPage() {
  return (
    <div className="flex flex-1 flex-col">
      <PageHeader>
        <Announcement />
        <PageHeaderHeading className="max-w-4xl">{title}</PageHeaderHeading>
        <PageHeaderDescription>{description}</PageHeaderDescription>
        <PageActions>
          <Button asChild size="sm" className="h-[31px] rounded-lg">
            <Link href="/docs/installation">Get Started</Link>
          </Button>
          <Button asChild size="sm" variant="ghost" className="rounded-lg">
            <Link href="/docs/components">View Components</Link>
          </Button>
        </PageActions>
      </PageHeader>
      <PageNav className="hidden md:flex">
        <ExamplesNav className="[&>a:first-child]:text-primary flex-1 overflow-hidden" />
        <ThemeSelector className="mr-4 hidden md:flex" />
      </PageNav>
      <div className="container-wrapper section-soft flex-1 pb-6">
        <div className="container overflow-hidden">
          <section className="border-border/50 -mx-4 w-[160vw] overflow-hidden rounded-lg border md:hidden md:w-[150vw]">
            <Image
              src="/r/styles/new-york-v4/dashboard-01-light.png"
              width={1400}
              height={875}
              alt="Dashboard"
              className="block dark:hidden"
              priority
            />
            <Image
              src="/r/styles/new-york-v4/dashboard-01-dark.png"
              width={1400}
              height={875}
              alt="Dashboard"
              className="hidden dark:block"
              priority
            />
          </section>
          <section className="theme-container hidden md:block">
            <RootComponents />
          </section>
        </div>
      </div>
    </div>
  )
}

Subdomains

Functions

Dependencies

Frequently Asked Questions

What does page.tsx do?
page.tsx is a source file in the ui codebase, written in tsx. It belongs to the DocumentationAtlas domain, Changelog subdomain.
What functions are defined in page.tsx?
page.tsx defines 1 function(s): IndexPage.
What does page.tsx depend on?
page.tsx imports 11 module(s): RootComponents, announcement, button, examples-nav, image, index.tsx, link, next, and 3 more.
Where is page.tsx in the architecture?
page.tsx is located at apps/v4/app/(app)/(root)/page.tsx (domain: DocumentationAtlas, subdomain: Changelog, directory: apps/v4/app/(app)/(root)).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free