diff --git a/web/src/views/apps/php84/IndexView.vue b/web/src/views/apps/php84/IndexView.vue
new file mode 100644
index 00000000..a67ef2d2
--- /dev/null
+++ b/web/src/views/apps/php84/IndexView.vue
@@ -0,0 +1,11 @@
+
+
+
+
+
diff --git a/web/src/views/apps/php84/route.ts b/web/src/views/apps/php84/route.ts
new file mode 100644
index 00000000..3ec23cda
--- /dev/null
+++ b/web/src/views/apps/php84/route.ts
@@ -0,0 +1,23 @@
+import type { RouteType } from '~/types/router'
+
+const Layout = () => import('@/layout/IndexView.vue')
+
+export default {
+ name: 'php84',
+ path: '/apps/php84',
+ component: Layout,
+ isHidden: true,
+ children: [
+ {
+ name: 'apps-php84-index',
+ path: '',
+ component: () => import('./IndexView.vue'),
+ meta: {
+ title: 'PHP 8.4',
+ icon: 'logos:php',
+ role: ['admin'],
+ requireAuth: true
+ }
+ }
+ ]
+} as RouteType