diff --git a/bot/bun.lockb b/bot/bun.lockb
new file mode 100755
index 0000000..8e1eba5
Binary files /dev/null and b/bot/bun.lockb differ
diff --git a/bot/package.json b/bot/package.json
new file mode 100644
index 0000000..abc2c7a
--- /dev/null
+++ b/bot/package.json
@@ -0,0 +1,19 @@
+{
+ "name": "supportbot",
+ "module": "index.ts",
+ "type": "module",
+ "scripts": {
+ "start": "bun run src/index.ts",
+ "format": "prettier --write ."
+ },
+ "devDependencies": {
+ "bun-types": "latest",
+ "prettier": "^3.2.5"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "dependencies": {
+ "discord.js": "^14.14.1"
+ }
+}
diff --git a/src/commands/context/reportUser.ts b/bot/src/commands/context/reportUser.ts
similarity index 100%
rename from src/commands/context/reportUser.ts
rename to bot/src/commands/context/reportUser.ts
diff --git a/src/commands/context/verify.ts b/bot/src/commands/context/verify.ts
similarity index 100%
rename from src/commands/context/verify.ts
rename to bot/src/commands/context/verify.ts
diff --git a/src/commands/help.ts b/bot/src/commands/help.ts
similarity index 100%
rename from src/commands/help.ts
rename to bot/src/commands/help.ts
diff --git a/src/commands/index.ts b/bot/src/commands/index.ts
similarity index 100%
rename from src/commands/index.ts
rename to bot/src/commands/index.ts
diff --git a/src/commands/info.ts b/bot/src/commands/info.ts
similarity index 100%
rename from src/commands/info.ts
rename to bot/src/commands/info.ts
diff --git a/src/commands/infos/index.ts b/bot/src/commands/infos/index.ts
similarity index 100%
rename from src/commands/infos/index.ts
rename to bot/src/commands/infos/index.ts
diff --git a/src/commands/infos/member.ts b/bot/src/commands/infos/member.ts
similarity index 100%
rename from src/commands/infos/member.ts
rename to bot/src/commands/infos/member.ts
diff --git a/src/commands/infos/role.ts b/bot/src/commands/infos/role.ts
similarity index 100%
rename from src/commands/infos/role.ts
rename to bot/src/commands/infos/role.ts
diff --git a/src/commands/infos/server.ts b/bot/src/commands/infos/server.ts
similarity index 100%
rename from src/commands/infos/server.ts
rename to bot/src/commands/infos/server.ts
diff --git a/src/commands/lockdown.ts b/bot/src/commands/lockdown.ts
similarity index 100%
rename from src/commands/lockdown.ts
rename to bot/src/commands/lockdown.ts
diff --git a/src/commands/lockdowns/channel.ts b/bot/src/commands/lockdowns/channel.ts
similarity index 100%
rename from src/commands/lockdowns/channel.ts
rename to bot/src/commands/lockdowns/channel.ts
diff --git a/src/commands/lockdowns/index.ts b/bot/src/commands/lockdowns/index.ts
similarity index 100%
rename from src/commands/lockdowns/index.ts
rename to bot/src/commands/lockdowns/index.ts
diff --git a/src/commands/lockdowns/server.ts b/bot/src/commands/lockdowns/server.ts
similarity index 100%
rename from src/commands/lockdowns/server.ts
rename to bot/src/commands/lockdowns/server.ts
diff --git a/src/commands/lockdowns/util.ts b/bot/src/commands/lockdowns/util.ts
similarity index 100%
rename from src/commands/lockdowns/util.ts
rename to bot/src/commands/lockdowns/util.ts
diff --git a/src/commands/moderation.ts b/bot/src/commands/moderation.ts
similarity index 100%
rename from src/commands/moderation.ts
rename to bot/src/commands/moderation.ts
diff --git a/src/commands/moderations/ban.ts b/bot/src/commands/moderations/ban.ts
similarity index 100%
rename from src/commands/moderations/ban.ts
rename to bot/src/commands/moderations/ban.ts
diff --git a/src/commands/moderations/index.ts b/bot/src/commands/moderations/index.ts
similarity index 100%
rename from src/commands/moderations/index.ts
rename to bot/src/commands/moderations/index.ts
diff --git a/src/commands/moderations/kick.ts b/bot/src/commands/moderations/kick.ts
similarity index 100%
rename from src/commands/moderations/kick.ts
rename to bot/src/commands/moderations/kick.ts
diff --git a/src/commands/moderations/unban.ts b/bot/src/commands/moderations/unban.ts
similarity index 100%
rename from src/commands/moderations/unban.ts
rename to bot/src/commands/moderations/unban.ts
diff --git a/src/commands/ping.ts b/bot/src/commands/ping.ts
similarity index 100%
rename from src/commands/ping.ts
rename to bot/src/commands/ping.ts
diff --git a/src/commands/refresh.ts b/bot/src/commands/refresh.ts
similarity index 100%
rename from src/commands/refresh.ts
rename to bot/src/commands/refresh.ts
diff --git a/src/commands/report.ts b/bot/src/commands/report.ts
similarity index 100%
rename from src/commands/report.ts
rename to bot/src/commands/report.ts
diff --git a/src/commands/reports/index.ts b/bot/src/commands/reports/index.ts
similarity index 100%
rename from src/commands/reports/index.ts
rename to bot/src/commands/reports/index.ts
diff --git a/src/commands/reports/manual.ts b/bot/src/commands/reports/manual.ts
similarity index 100%
rename from src/commands/reports/manual.ts
rename to bot/src/commands/reports/manual.ts
diff --git a/src/commands/reports/panel.ts b/bot/src/commands/reports/panel.ts
similarity index 100%
rename from src/commands/reports/panel.ts
rename to bot/src/commands/reports/panel.ts
diff --git a/src/commands/reports/setup.ts b/bot/src/commands/reports/setup.ts
similarity index 100%
rename from src/commands/reports/setup.ts
rename to bot/src/commands/reports/setup.ts
diff --git a/src/commands/reports/util.ts b/bot/src/commands/reports/util.ts
similarity index 100%
rename from src/commands/reports/util.ts
rename to bot/src/commands/reports/util.ts
diff --git a/src/commands/role.ts b/bot/src/commands/role.ts
similarity index 100%
rename from src/commands/role.ts
rename to bot/src/commands/role.ts
diff --git a/src/commands/roles/all.ts b/bot/src/commands/roles/all.ts
similarity index 100%
rename from src/commands/roles/all.ts
rename to bot/src/commands/roles/all.ts
diff --git a/src/commands/roles/index.ts b/bot/src/commands/roles/index.ts
similarity index 100%
rename from src/commands/roles/index.ts
rename to bot/src/commands/roles/index.ts
diff --git a/src/commands/roles/member.ts b/bot/src/commands/roles/member.ts
similarity index 100%
rename from src/commands/roles/member.ts
rename to bot/src/commands/roles/member.ts
diff --git a/src/commands/roles/panel.ts b/bot/src/commands/roles/panel.ts
similarity index 100%
rename from src/commands/roles/panel.ts
rename to bot/src/commands/roles/panel.ts
diff --git a/src/commands/ticket.ts b/bot/src/commands/ticket.ts
similarity index 100%
rename from src/commands/ticket.ts
rename to bot/src/commands/ticket.ts
diff --git a/src/commands/tickets/add.ts b/bot/src/commands/tickets/add.ts
similarity index 100%
rename from src/commands/tickets/add.ts
rename to bot/src/commands/tickets/add.ts
diff --git a/src/commands/tickets/close.ts b/bot/src/commands/tickets/close.ts
similarity index 100%
rename from src/commands/tickets/close.ts
rename to bot/src/commands/tickets/close.ts
diff --git a/src/commands/tickets/index.ts b/bot/src/commands/tickets/index.ts
similarity index 100%
rename from src/commands/tickets/index.ts
rename to bot/src/commands/tickets/index.ts
diff --git a/src/commands/tickets/list.ts b/bot/src/commands/tickets/list.ts
similarity index 100%
rename from src/commands/tickets/list.ts
rename to bot/src/commands/tickets/list.ts
diff --git a/src/commands/tickets/panel.ts b/bot/src/commands/tickets/panel.ts
similarity index 100%
rename from src/commands/tickets/panel.ts
rename to bot/src/commands/tickets/panel.ts
diff --git a/src/commands/tickets/remove.ts b/bot/src/commands/tickets/remove.ts
similarity index 100%
rename from src/commands/tickets/remove.ts
rename to bot/src/commands/tickets/remove.ts
diff --git a/src/commands/tickets/setup.ts b/bot/src/commands/tickets/setup.ts
similarity index 100%
rename from src/commands/tickets/setup.ts
rename to bot/src/commands/tickets/setup.ts
diff --git a/src/commands/tickets/util.ts b/bot/src/commands/tickets/util.ts
similarity index 100%
rename from src/commands/tickets/util.ts
rename to bot/src/commands/tickets/util.ts
diff --git a/src/commands/verification.ts b/bot/src/commands/verification.ts
similarity index 100%
rename from src/commands/verification.ts
rename to bot/src/commands/verification.ts
diff --git a/src/commands/verifications/index.ts b/bot/src/commands/verifications/index.ts
similarity index 100%
rename from src/commands/verifications/index.ts
rename to bot/src/commands/verifications/index.ts
diff --git a/src/commands/verifications/manual.ts b/bot/src/commands/verifications/manual.ts
similarity index 100%
rename from src/commands/verifications/manual.ts
rename to bot/src/commands/verifications/manual.ts
diff --git a/src/commands/verifications/panel.ts b/bot/src/commands/verifications/panel.ts
similarity index 100%
rename from src/commands/verifications/panel.ts
rename to bot/src/commands/verifications/panel.ts
diff --git a/src/commands/verifications/setup.ts b/bot/src/commands/verifications/setup.ts
similarity index 100%
rename from src/commands/verifications/setup.ts
rename to bot/src/commands/verifications/setup.ts
diff --git a/src/commands/verifications/util.ts b/bot/src/commands/verifications/util.ts
similarity index 100%
rename from src/commands/verifications/util.ts
rename to bot/src/commands/verifications/util.ts
diff --git a/src/config.ts b/bot/src/config.ts
similarity index 100%
rename from src/config.ts
rename to bot/src/config.ts
diff --git a/src/deploy.ts b/bot/src/deploy.ts
similarity index 100%
rename from src/deploy.ts
rename to bot/src/deploy.ts
diff --git a/src/index.ts b/bot/src/index.ts
similarity index 100%
rename from src/index.ts
rename to bot/src/index.ts
diff --git a/src/types.ts b/bot/src/types.ts
similarity index 100%
rename from src/types.ts
rename to bot/src/types.ts
diff --git a/tsconfig.json b/bot/tsconfig.json
similarity index 100%
rename from tsconfig.json
rename to bot/tsconfig.json
diff --git a/bun.lockb b/bun.lockb
index 8e1eba5..a205c0e 100755
Binary files a/bun.lockb and b/bun.lockb differ
diff --git a/dashboard/.eslintrc.json b/dashboard/.eslintrc.json
new file mode 100644
index 0000000..bffb357
--- /dev/null
+++ b/dashboard/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "next/core-web-vitals"
+}
diff --git a/dashboard/.gitignore b/dashboard/.gitignore
new file mode 100644
index 0000000..fd3dbb5
--- /dev/null
+++ b/dashboard/.gitignore
@@ -0,0 +1,36 @@
+# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
+
+# dependencies
+/node_modules
+/.pnp
+.pnp.js
+.yarn/install-state.gz
+
+# testing
+/coverage
+
+# next.js
+/.next/
+/out/
+
+# production
+/build
+
+# misc
+.DS_Store
+*.pem
+
+# debug
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# local env files
+.env*.local
+
+# vercel
+.vercel
+
+# typescript
+*.tsbuildinfo
+next-env.d.ts
diff --git a/dashboard/bun.lockb b/dashboard/bun.lockb
new file mode 100755
index 0000000..89a1926
Binary files /dev/null and b/dashboard/bun.lockb differ
diff --git a/dashboard/next.config.mjs b/dashboard/next.config.mjs
new file mode 100644
index 0000000..d5456a1
--- /dev/null
+++ b/dashboard/next.config.mjs
@@ -0,0 +1,6 @@
+/** @type {import('next').NextConfig} */
+const nextConfig = {
+ reactStrictMode: true,
+};
+
+export default nextConfig;
diff --git a/dashboard/package.json b/dashboard/package.json
new file mode 100644
index 0000000..017bd52
--- /dev/null
+++ b/dashboard/package.json
@@ -0,0 +1,29 @@
+{
+ "name": "dashboard",
+ "version": "0.1.0",
+ "private": true,
+ "scripts": {
+ "dev": "next dev",
+ "build": "next build",
+ "start": "next start",
+ "lint": "next lint"
+ },
+ "dependencies": {
+ "@emotion/react": "^11.11.4",
+ "@emotion/styled": "^11.11.0",
+ "@fontsource/roboto": "^5.0.12",
+ "@mui/icons-material": "^5.15.14",
+ "@mui/material": "^5.15.14",
+ "next": "14.1.4",
+ "react": "^18",
+ "react-dom": "^18"
+ },
+ "devDependencies": {
+ "typescript": "^5",
+ "@types/node": "^20",
+ "@types/react": "^18",
+ "@types/react-dom": "^18",
+ "eslint": "^8",
+ "eslint-config-next": "14.1.4"
+ }
+}
diff --git a/dashboard/public/favicon.ico b/dashboard/public/favicon.ico
new file mode 100644
index 0000000..718d6fe
Binary files /dev/null and b/dashboard/public/favicon.ico differ
diff --git a/dashboard/public/next.svg b/dashboard/public/next.svg
new file mode 100644
index 0000000..5174b28
--- /dev/null
+++ b/dashboard/public/next.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/dashboard/public/vercel.svg b/dashboard/public/vercel.svg
new file mode 100644
index 0000000..d2f8422
--- /dev/null
+++ b/dashboard/public/vercel.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/dashboard/src/pages/_app.tsx b/dashboard/src/pages/_app.tsx
new file mode 100644
index 0000000..2eebfe9
--- /dev/null
+++ b/dashboard/src/pages/_app.tsx
@@ -0,0 +1,9 @@
+import "@fontsource/roboto/300.css";
+import "@fontsource/roboto/400.css";
+import "@fontsource/roboto/500.css";
+import "@fontsource/roboto/700.css";
+import type { AppProps } from "next/app";
+
+export default function App({ Component, pageProps }: AppProps) {
+ return