### Project Setup Commands Source: https://context7.com/brijr/components/llms.txt Commands for creating a new Next.js project, installing craft-ds (which includes shadcn/ui setup), and optional dark mode configuration. ```bash # Step 1: Create a new Next.js project npx create-next-app@latest my-app --typescript --tailwind --eslint # Step 2: Install craft-ds (includes shadcn/ui setup) npx craft-ds@latest init # Step 3: (Optional) Add dark mode – follow shadcn/ui dark mode docs # https://ui.shadcn.com/docs/dark-mode/next # Step 4: Copy any component from components.work into your /components folder # No npm install required – components are copy-paste ready # Development npm run dev # starts Next.js dev server on localhost:3000 npm run build # production build npm run start # serve production build # Environment variables ``` -------------------------------- ### Initialize craft-ds Source: https://github.com/brijr/components/blob/main/app/(mdx)/start/page.mdx Install craft-ds, which also handles the installation of shadcn/ui. Run this command in your Next.js project directory. ```bash npx craft-ds@latest init ``` -------------------------------- ### Example Button Link Component Source: https://github.com/brijr/components/blob/main/app/(mdx)/start/page.mdx This React component demonstrates how to use brijr/components' Button and Next.js Link for navigation. Ensure you have the necessary imports. ```tsx import { Button } from "@/components/ui/button"; import Link from "next/link"; ``` -------------------------------- ### ThemeProvider and Dark Mode Setup Source: https://context7.com/brijr/components/llms.txt Wraps the application with next-themes' ThemeProvider for system-aware dark/light mode. Includes a ModeToggle button to cycle themes. Components automatically adapt to the 'dark' class applied to the element. ```typescript // app/layout.tsx – full setup import { ThemeProvider } from "@/components/site/theme/theme-provider"; import { ModeToggle } from "@/components/site/theme/theme-toggle"; export default function RootLayout({ children }) { return ( defaultTheme="system" // respects OS preference on first load enableSystem disableTransitionOnChange > {/* button: Sun / Moon / System icons */} {children} ); } // All craft-ds components and shadcn/ui primitives respond to the "dark" class // via Tailwind's dark: variant automatically. ``` -------------------------------- ### Navigation Component Setup Source: https://context7.com/brijr/components/llms.txt Integrates a sticky, animated navigation bar into the root layout. The Nav component auto-hides on scroll down and reappears on scroll up, with a responsive mobile drawer. ```typescript // components/nav.tsx import { Nav } from "@/components/nav"; // In app/layout.tsx – place Nav above page content export default function RootLayout({ children }: { children: React.ReactNode }) { return (