diff --git a/app/dashboard/layout.tsx b/app/dashboard/layout.tsx
new file mode 100644
index 0000000..82749c5
--- /dev/null
+++ b/app/dashboard/layout.tsx
@@ -0,0 +1,40 @@
+import { LayoutGrid, Wallet, ArrowLeftRight } from 'lucide-react';
+import { ThemeToggle } from '@/components/theme-toggle';
+import { Button } from '@/components/ui/button';
+
+export default function DashboardLayout({
+ children,
+}: {
+ children: React.ReactNode;
+}) {
+ return (
+
+
+
+
{children}
+
+ );
+}
\ No newline at end of file
diff --git a/app/dashboard/page.tsx b/app/dashboard/page.tsx
new file mode 100644
index 0000000..1fa1f12
--- /dev/null
+++ b/app/dashboard/page.tsx
@@ -0,0 +1,14 @@
+import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
+
+export default function DashboardPage() {
+ return (
+
+
+ 欢迎来到 Omniledger
+
+
+ 您的跨界记账中枢。
+
+
+ );
+}
\ No newline at end of file
diff --git a/app/page.tsx b/app/page.tsx
index 7b947a2..e94329c 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -1,66 +1,5 @@
-import Image from "next/image";
-import styles from "./page.module.css";
+import { redirect } from 'next/navigation';
-export default function Home() {
- return (
-
-
-
-
-
To get started, edit the page.tsx file.
-
- Looking for a starting point or more instructions? Head over to{" "}
-
- Templates
- {" "}
- or the{" "}
-
- Learning
- {" "}
- center.
-
-
-
-
-
- );
-}
+export default function HomePage() {
+ redirect('/dashboard');
+}
\ No newline at end of file
diff --git a/src/components/theme-toggle.tsx b/src/components/theme-toggle.tsx
new file mode 100644
index 0000000..a5d75aa
--- /dev/null
+++ b/src/components/theme-toggle.tsx
@@ -0,0 +1,21 @@
+'use client';
+
+import { useTheme } from 'next-themes';
+import { Moon, Sun } from 'lucide-react';
+import { Button } from '@/components/ui/button';
+
+export function ThemeToggle() {
+ const { theme, setTheme } = useTheme();
+
+ return (
+
+ );
+}
\ No newline at end of file