Skip to main content

Application shell

Public entry points, protected application shell, dashboard surface, and feature extension points.

SectionApplication / Foundation
PurposeApplication overview
UpdatedJul 6, 2026
AuthorTemplate Maintainers
Versionv1.2.0
Reading time2 min

Application shell

The template ships with public routes, protected routes, a shared application shell, and a starter dashboard. These surfaces are meant to be replaced or extended by the product built from the template.

Public routes

Public routes include the homepage, login/error pages, documentation, auth endpoints, health checks, and /api/v1. Public does not mean unauthenticated data access: API v1 still requires API key authentication.

Protected routes

Protected application pages live behind Better Auth session checks. The route boundary is enforced before protected content renders.

The global protected routes include:

  • /dashboard;
  • /welcome;
  • /workspaces;
  • /user/...;
  • /invite/:invitationId;
  • /w/:organizationKey/....

Dashboard surface

The starter dashboard is a template page. It demonstrates the protected layout, workspace route context, loading skeletons, and shared UI primitives. Replace the demo content with product-specific overview data when building a service from the template.

Extension points

Use the existing feature slices as the default pattern for adding product capabilities:

  • define routes in the feature route file;
  • keep pages and layouts thin in src/app;
  • keep business logic under src/features;
  • use shared UI primitives from src/components.