diff --git a/web/app/src/lib/components/AuthCheck.svelte b/web/app/src/lib/components/checks/AuthCheck.svelte
similarity index 100%
rename from web/app/src/lib/components/AuthCheck.svelte
rename to web/app/src/lib/components/checks/AuthCheck.svelte
diff --git a/web/app/src/lib/components/AuthRequired.svelte b/web/app/src/lib/components/checks/AuthRequired.svelte
similarity index 100%
rename from web/app/src/lib/components/AuthRequired.svelte
rename to web/app/src/lib/components/checks/AuthRequired.svelte
diff --git a/web/app/src/lib/components/EditPostPanel.svelte b/web/app/src/lib/components/panels/EditPostPanel.svelte
similarity index 100%
rename from web/app/src/lib/components/EditPostPanel.svelte
rename to web/app/src/lib/components/panels/EditPostPanel.svelte
diff --git a/web/app/src/lib/components/TagNotes/EditTagNotesPanel.svelte b/web/app/src/lib/components/panels/EditTagNotesPanel.svelte
similarity index 100%
rename from web/app/src/lib/components/TagNotes/EditTagNotesPanel.svelte
rename to web/app/src/lib/components/panels/EditTagNotesPanel.svelte
diff --git a/web/app/src/lib/components/Tag/EditTagPanel.svelte b/web/app/src/lib/components/panels/EditTagPanel.svelte
similarity index 100%
rename from web/app/src/lib/components/Tag/EditTagPanel.svelte
rename to web/app/src/lib/components/panels/EditTagPanel.svelte
diff --git a/web/app/src/lib/components/ViewPostPanel.svelte b/web/app/src/lib/components/panels/ViewPostPanel.svelte
similarity index 93%
rename from web/app/src/lib/components/ViewPostPanel.svelte
rename to web/app/src/lib/components/panels/ViewPostPanel.svelte
index d6f91a8..21d737d 100644
--- a/web/app/src/lib/components/ViewPostPanel.svelte
+++ b/web/app/src/lib/components/panels/ViewPostPanel.svelte
@@ -1,6 +1,6 @@
diff --git a/web/app/src/lib/components/Tag/ViewTagPanel.svelte b/web/app/src/lib/components/panels/ViewTagPanel.svelte
similarity index 93%
rename from web/app/src/lib/components/Tag/ViewTagPanel.svelte
rename to web/app/src/lib/components/panels/ViewTagPanel.svelte
index 91c5285..f2ac959 100644
--- a/web/app/src/lib/components/Tag/ViewTagPanel.svelte
+++ b/web/app/src/lib/components/panels/ViewTagPanel.svelte
@@ -2,8 +2,8 @@
import { onMount } from "svelte";
import { getRelatedTags } from "$lib/api";
- import AuthCheck from "$lib/components/AuthCheck.svelte";
- import TagLinkNumbered from "$lib/components/TagLinkNumbered.svelte";
+ import AuthCheck from "$lib/components/checks/AuthCheck.svelte";
+ import TagLinkNumbered from "$lib/components/ui/TagLinkNumbered.svelte";
let { tag, data, toggleRenameMenu } = $props();
let related_tags = $state([]);
diff --git a/web/app/src/lib/components/Navbar.svelte b/web/app/src/lib/components/ui/Navbar.svelte
similarity index 100%
rename from web/app/src/lib/components/Navbar.svelte
rename to web/app/src/lib/components/ui/Navbar.svelte
diff --git a/web/app/src/lib/components/Post/PostGallery.svelte b/web/app/src/lib/components/ui/PostGallery.svelte
similarity index 100%
rename from web/app/src/lib/components/Post/PostGallery.svelte
rename to web/app/src/lib/components/ui/PostGallery.svelte
diff --git a/web/app/src/lib/components/TagLinkNumbered.svelte b/web/app/src/lib/components/ui/TagLinkNumbered.svelte
similarity index 100%
rename from web/app/src/lib/components/TagLinkNumbered.svelte
rename to web/app/src/lib/components/ui/TagLinkNumbered.svelte
diff --git a/web/app/src/routes/+layout.svelte b/web/app/src/routes/+layout.svelte
index 0970b3f..1dfa00c 100644
--- a/web/app/src/routes/+layout.svelte
+++ b/web/app/src/routes/+layout.svelte
@@ -1,6 +1,6 @@