Architecture
Understand how Starter Pro is structured so you can scale features, auth, billing, and product workflows without losing maintainability.
Production-shaped architectureLink to section
Starter Pro is designed around one principle:
move fast without destroying long-term maintainability.
The architecture separates product concerns clearly:
- routing
- authentication
- billing
- backend boundaries
- dashboard structure
- product features
- shared UI primitives
This helps teams scale product complexity without turning the codebase into a monolith of coupled pages and duplicated logic.
Core principle
Starter Pro is structured to support real SaaS growth, not only local demos.
High-level architectureLink to section
app
↓
route groups
↓
feature modules
↓
server boundaries
↓
database + billing + auth
↓
shared UI systemRoute layer
The route layer defines URLs, layouts, navigation structure, protected areas, and page orchestration.
Core systemsLink to section
Authentication
Billing
Database
Dashboard shell
Why this structure existsLink to section
Most SaaS codebases become difficult to evolve because:
- auth logic leaks everywhere
- billing state becomes inconsistent
- pages duplicate logic
- UI primitives drift apart
- feature boundaries disappear
- server and client responsibilities mix together
Starter Pro is designed to reduce that entropy from the start.
Production rule
The architecture is designed to keep product velocity high after launch, not only before launch.
Product flowLink to section
Configure infrastructureLink to section
Connect database, authentication providers, email delivery, and Stripe billing infrastructure.
Keep the foundationLink to section
Preserve auth, billing, layouts, settings, dashboard shell, and protected routing structure.
Replace product surfacesLink to section
Replace starter content, navigation labels, dashboards, and domain-specific flows with your real product logic.
Extend feature modulesLink to section
Add your own business workflows while keeping server boundaries and shared UI primitives stable.
Launch incrementallyLink to section
Ship faster because the infrastructure layer is already production-shaped.
Protected application modelLink to section
Starter Pro treats the application as multiple trust layers.
Marketing and acquisition
- landing pages
- pricing
- marketing routes
- upgrade flows
- SEO surfaces
Authenticated product area
- dashboard
- settings
- billing
- team workflows
- subscription-aware access
Shared UI philosophyLink to section
Starter Pro ships with a shared design system already integrated.
This includes:
@pycolors/ui@pycolors/tokens- Tailwind CSS v4
- semantic color tokens
- reusable SaaS primitives
- accessibility-first patterns
The goal is consistency across:
- marketing pages
- app UI
- billing flows
- settings pages
- dialogs and overlays
- dashboard surfaces
UI consistency matters
SaaS products feel more premium when navigation, overlays, forms, settings, and billing surfaces behave consistently across the entire product.
What you should customizeLink to section
Starter Pro is designed to be extended, not rewritten.
You typically replace:
- branding
- copy
- navigation labels
- domain entities
- product workflows
- dashboard content
- pricing strategy
You typically keep:
- auth foundations
- billing infrastructure
- route protection
- dashboard shell
- settings architecture
- shared UI primitives
- product structure
Mental modelLink to section
Starter Pro is not the final product.
It is the production-shaped system your product grows inside.