Key drawbacks include hard navigations between zones, layout duplication challenges, increased operational complexity, and limitations in sharing real-time state between applications.
Hard Navigation (Page Reloads): Navigating from one zone to another causes a full page reload, losing the SPA feel. The Next.js <Link> component does not work across zones; developers must use standard <a> tags[citation:1][citation:10].
Shared Layouts & State: Since each zone is a separate app, they cannot share a single mounted layout (header/footer). Zones must either duplicate the layout code or import it from a shared NPM package, which still requires re-rendering the entire page on navigation[citation:3].
Increased Complexity: Managing multiple repositories or a monorepo, coordinating shared dependencies, setting up routing (rewrites/proxy), and configuring deployment pipelines adds significant operational overhead[citation:5][citation:7].
Cross-Cutting Concerns: Features like authentication state, theming, or a shared shopping cart require complex cross-application communication patterns (e.g., cookies, localStorage, or custom messaging) as React Context cannot work across zones[citation:5].
Configuration Overhead: Requires explicit configuration for asset prefixes and path rewrites to avoid collisions and ensure correct routing[citation:1][citation:10].