diff --git a/web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/active-cycles/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/active-cycles/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/active-cycles/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/active-cycles/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/active-cycles/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/active-cycles/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/active-cycles/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/active-cycles/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/active-cycles/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/active-cycles/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/analytics/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/analytics/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/analytics/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/analytics/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/analytics/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/analytics/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/analytics/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/analytics/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/analytics/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/analytics/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/analytics/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/analytics/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/browse/[workItem]/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/browse/[workItem]/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/browse/[workItem]/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/browse/[workItem]/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/browse/[workItem]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/browse/[workItem]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/browse/[workItem]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/drafts/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/drafts/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/drafts/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/drafts/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/drafts/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/drafts/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/drafts/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/drafts/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/drafts/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/drafts/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/drafts/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/drafts/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/extended-project-sidebar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/extended-project-sidebar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/extended-project-sidebar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/extended-project-sidebar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/extended-sidebar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/extended-sidebar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/extended-sidebar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/extended-sidebar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/notifications/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/notifications/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/notifications/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/notifications/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/notifications/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/notifications/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/notifications/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/notifications/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/[profileViewId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/[profileViewId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/[profileViewId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/[profileViewId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/activity/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/activity/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/activity/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/activity/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/navbar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/navbar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/navbar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/navbar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/profile/[userId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/profile/[userId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/cycles/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/[archivedIssueId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/[archivedIssueId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/[archivedIssueId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/[archivedIssueId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/issues/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/modules/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(detail)/[issueId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(detail)/[issueId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(detail)/[issueId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(detail)/[issueId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/[moduleId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/[moduleId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/[moduleId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/[moduleId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/[pageId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/[pageId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/[pageId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/[pageId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/pages/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/automations/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/automations/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/automations/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/automations/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/estimates/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/estimates/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/estimates/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/estimates/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/features/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/features/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/features/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/features/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/labels/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/labels/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/labels/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/labels/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/members/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/members/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/members/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/members/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/sidebar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/sidebar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/sidebar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/sidebar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/states/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/states/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/states/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/(with-sidebar)/states/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/settings/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/mobile-header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/mobile-header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/mobile-header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/mobile-header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(detail)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(list)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(list)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/projects/(list)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/projects/(list)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/api-tokens/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/api-tokens/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/api-tokens/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/api-tokens/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/billing/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/billing/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/billing/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/billing/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/exports/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/exports/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/exports/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/exports/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/imports/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/imports/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/imports/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/imports/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/integrations/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/integrations/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/integrations/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/integrations/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/members/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/members/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/members/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/members/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/mobile-header-tabs.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/mobile-header-tabs.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/mobile-header-tabs.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/mobile-header-tabs.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/sidebar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/sidebar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/sidebar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/sidebar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/[webhookId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/[webhookId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/[webhookId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/[webhookId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/(with-sidebar)/webhooks/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/settings/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/settings/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/settings/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/settings/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/sidebar.tsx b/web/app/(all)/[workspaceSlug]/(projects)/sidebar.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/sidebar.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/sidebar.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/stickies/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/stickies/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/stickies/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/stickies/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/stickies/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/stickies/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/stickies/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/stickies/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/stickies/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/stickies/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/stickies/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/stickies/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/workspace-views/[globalViewId]/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/workspace-views/[globalViewId]/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/workspace-views/[globalViewId]/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/workspace-views/[globalViewId]/page.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx b/web/app/(all)/[workspaceSlug]/(projects)/workspace-views/header.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/workspace-views/header.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/workspace-views/layout.tsx b/web/app/(all)/[workspaceSlug]/(projects)/workspace-views/layout.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/workspace-views/layout.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/workspace-views/layout.tsx
diff --git a/web/app/[workspaceSlug]/(projects)/workspace-views/page.tsx b/web/app/(all)/[workspaceSlug]/(projects)/workspace-views/page.tsx
similarity index 100%
rename from web/app/[workspaceSlug]/(projects)/workspace-views/page.tsx
rename to web/app/(all)/[workspaceSlug]/(projects)/workspace-views/page.tsx
diff --git a/web/app/accounts/forgot-password/layout.tsx b/web/app/(all)/accounts/forgot-password/layout.tsx
similarity index 100%
rename from web/app/accounts/forgot-password/layout.tsx
rename to web/app/(all)/accounts/forgot-password/layout.tsx
diff --git a/web/app/accounts/forgot-password/page.tsx b/web/app/(all)/accounts/forgot-password/page.tsx
similarity index 100%
rename from web/app/accounts/forgot-password/page.tsx
rename to web/app/(all)/accounts/forgot-password/page.tsx
diff --git a/web/app/accounts/reset-password/layout.tsx b/web/app/(all)/accounts/reset-password/layout.tsx
similarity index 100%
rename from web/app/accounts/reset-password/layout.tsx
rename to web/app/(all)/accounts/reset-password/layout.tsx
diff --git a/web/app/accounts/reset-password/page.tsx b/web/app/(all)/accounts/reset-password/page.tsx
similarity index 100%
rename from web/app/accounts/reset-password/page.tsx
rename to web/app/(all)/accounts/reset-password/page.tsx
diff --git a/web/app/accounts/set-password/layout.tsx b/web/app/(all)/accounts/set-password/layout.tsx
similarity index 100%
rename from web/app/accounts/set-password/layout.tsx
rename to web/app/(all)/accounts/set-password/layout.tsx
diff --git a/web/app/accounts/set-password/page.tsx b/web/app/(all)/accounts/set-password/page.tsx
similarity index 100%
rename from web/app/accounts/set-password/page.tsx
rename to web/app/(all)/accounts/set-password/page.tsx
diff --git a/web/app/create-workspace/layout.tsx b/web/app/(all)/create-workspace/layout.tsx
similarity index 100%
rename from web/app/create-workspace/layout.tsx
rename to web/app/(all)/create-workspace/layout.tsx
diff --git a/web/app/create-workspace/page.tsx b/web/app/(all)/create-workspace/page.tsx
similarity index 100%
rename from web/app/create-workspace/page.tsx
rename to web/app/(all)/create-workspace/page.tsx
diff --git a/web/app/installations/[provider]/layout.tsx b/web/app/(all)/installations/[provider]/layout.tsx
similarity index 100%
rename from web/app/installations/[provider]/layout.tsx
rename to web/app/(all)/installations/[provider]/layout.tsx
diff --git a/web/app/installations/[provider]/page.tsx b/web/app/(all)/installations/[provider]/page.tsx
similarity index 100%
rename from web/app/installations/[provider]/page.tsx
rename to web/app/(all)/installations/[provider]/page.tsx
diff --git a/web/app/invitations/layout.tsx b/web/app/(all)/invitations/layout.tsx
similarity index 100%
rename from web/app/invitations/layout.tsx
rename to web/app/(all)/invitations/layout.tsx
diff --git a/web/app/invitations/page.tsx b/web/app/(all)/invitations/page.tsx
similarity index 100%
rename from web/app/invitations/page.tsx
rename to web/app/(all)/invitations/page.tsx
diff --git a/web/app/(all)/layout.preload.tsx b/web/app/(all)/layout.preload.tsx
new file mode 100644
index 000000000..18ca3b4b3
--- /dev/null
+++ b/web/app/(all)/layout.preload.tsx
@@ -0,0 +1,28 @@
+"use client";
+
+import { useEffect } from "react";
+import ReactDOM from "react-dom";
+
+// https://nextjs.org/docs/app/api-reference/functions/generate-metadata#link-relpreload
+export const usePreloadResources = () => {
+ useEffect(() => {
+ const preloadItem = (url: string) => {
+ ReactDOM.preload(url, { as: "fetch", crossOrigin: "use-credentials" });
+ };
+
+ const urls = [
+ `${process.env.NEXT_PUBLIC_API_BASE_URL}/api/instances/`,
+ `${process.env.NEXT_PUBLIC_API_BASE_URL}/api/users/me/`,
+ `${process.env.NEXT_PUBLIC_API_BASE_URL}/api/users/me/profile/`,
+ `${process.env.NEXT_PUBLIC_API_BASE_URL}/api/users/me/settings/`,
+ `${process.env.NEXT_PUBLIC_API_BASE_URL}/api/users/me/workspaces/?v=${Date.now()}`,
+ ];
+
+ urls.forEach(url => preloadItem(url));
+ }, []);
+};
+
+export const PreloadResources = () => {
+ usePreloadResources();
+ return null;
+};
diff --git a/web/app/(all)/layout.tsx b/web/app/(all)/layout.tsx
new file mode 100644
index 000000000..023852648
--- /dev/null
+++ b/web/app/(all)/layout.tsx
@@ -0,0 +1,31 @@
+import { Metadata, Viewport } from "next";
+
+import { PreloadResources } from "./layout.preload";
+
+// styles
+import "@/styles/command-pallette.css";
+import "@/styles/emoji.css";
+import "@/styles/react-day-picker.css";
+
+export const metadata: Metadata = {
+ robots: {
+ index: false,
+ follow: false,
+ },
+};
+
+export const viewport: Viewport = {
+ minimumScale: 1,
+ initialScale: 1,
+ width: "device-width",
+ viewportFit: "cover",
+};
+
+export default function AppLayout({ children }: { children: React.ReactNode }) {
+ return (
+