diff --git a/src/app/configuration/resources/[resourceId]/account/page.tsx b/src/app/configuration/resources/[resourceId]/account/page.tsx
new file mode 100644
index 00000000..03df0d89
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/account/page.tsx
@@ -0,0 +1,18 @@
+import { Separator } from "@/components/ui/separator"
+import { AccountForm } from "@/components/account-form"
+
+export default function SettingsAccountPage() {
+ return (
+
+
+
Account
+
+ Update your account settings. Set your preferred language and
+ timezone.
+
+
+
+
+
+ )
+}
diff --git a/src/app/configuration/resources/[resourceId]/appearance/page.tsx b/src/app/configuration/resources/[resourceId]/appearance/page.tsx
new file mode 100644
index 00000000..ca038aa2
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/appearance/page.tsx
@@ -0,0 +1,18 @@
+import { Separator } from "@/components/ui/separator"
+import { AppearanceForm } from "@/components/appearance-form"
+
+export default function SettingsAppearancePage() {
+ return (
+
+
+
Appearance
+
+ Customize the appearance of the app. Automatically switch between day
+ and night themes.
+
+
+
+
+
+ )
+}
diff --git a/src/app/configuration/resources/[resourceId]/display/page.tsx b/src/app/configuration/resources/[resourceId]/display/page.tsx
new file mode 100644
index 00000000..f934f6e6
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/display/page.tsx
@@ -0,0 +1,17 @@
+import { Separator } from "@/components/ui/separator"
+import { DisplayForm } from "@/components/display-form"
+
+export default function SettingsDisplayPage() {
+ return (
+
+
+
Display
+
+ Turn items on or off to control what's displayed in the app.
+
+
+
+
+
+ )
+}
diff --git a/src/app/configuration/resources/[resourceId]/layout.tsx b/src/app/configuration/resources/[resourceId]/layout.tsx
new file mode 100644
index 00000000..3a443db7
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/layout.tsx
@@ -0,0 +1,76 @@
+import { Metadata } from "next"
+import Image from "next/image"
+
+import { Separator } from "@/components/ui/separator"
+import { SidebarNav } from "@/components/sidebar-nav"
+
+export const metadata: Metadata = {
+ title: "Forms",
+ description: "Advanced form example using react-hook-form and Zod.",
+}
+
+const sidebarNavItems = [
+ {
+ title: "Profile",
+ href: "/configuration/resources/{resourceId}/",
+ },
+ {
+ title: "Account",
+ href: "/configuration/resources/{resourceId}/account",
+ },
+ {
+ title: "Appearance",
+ href: "/configuration/resources/{resourceId}/appearance",
+ },
+ {
+ title: "Notifications",
+ href: "/configuration/resources/{resourceId}/notifications",
+ },
+ {
+ title: "Display",
+ href: "/configuration/resources/{resourceId}/display",
+ },
+]
+
+interface SettingsLayoutProps {
+ children: React.ReactNode,
+ params: { resourceId: string }
+}
+
+export default function SettingsLayout({ children, params }: SettingsLayoutProps) {
+ return (
+ <>
+
+
+
+
+
+
+
Settings
+
+ Manage your account settings and set e-mail preferences.
+
+
+
+
+
+
{children}
+
+
+ >
+ )
+}
diff --git a/src/app/configuration/resources/[resourceId]/notifications/page.tsx b/src/app/configuration/resources/[resourceId]/notifications/page.tsx
new file mode 100644
index 00000000..7c5c5ec0
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/notifications/page.tsx
@@ -0,0 +1,17 @@
+import { Separator } from "@/components/ui/separator"
+import { NotificationsForm } from "@/components/notifications-form"
+
+export default function SettingsNotificationsPage() {
+ return (
+
+
+
Notifications
+
+ Configure how you receive notifications.
+
+
+
+
+
+ )
+}
diff --git a/src/app/configuration/resources/[resourceId]/page.tsx b/src/app/configuration/resources/[resourceId]/page.tsx
new file mode 100644
index 00000000..66744634
--- /dev/null
+++ b/src/app/configuration/resources/[resourceId]/page.tsx
@@ -0,0 +1,17 @@
+import { Separator } from "@/components/ui/separator"
+import { ProfileForm } from "@app/components/profile-form"
+
+export default function SettingsProfilePage() {
+ return (
+
+
+
Profile
+
+ This is how others will see you on the site.
+
+
+
+
+
+ )
+}
diff --git a/src/app/configuration/resources/page.tsx b/src/app/configuration/resources/page.tsx
new file mode 100644
index 00000000..f720649d
--- /dev/null
+++ b/src/app/configuration/resources/page.tsx
@@ -0,0 +1,7 @@
+export default async function Page() {
+ return (
+ <>
+ This is where the table goes...
+ >
+ );
+}