Organizing large-scale projects
Core Principles
Project Structure Patterns
Feature-Based Architecture (Recommended)
Monorepo Structure
Why Turbo?
Application Bootstrap Patterns
Basic Bootstrap
Advanced Bootstrap with Configuration
State Management Architecture
State Management Options in Aurelia 2
When to Use Each Approach
DI-Based Services
@aurelia/state
DI-Based State Management Pattern (Recommended)
Using @aurelia/state for Complex Scenarios
Using DI-Based State in Components
Using @aurelia/state in Components
Template Usage with @aurelia/state
Comparison: When to Use Each
Feature
DI Services
@aurelia/state
Routing Patterns
Why Lazy Loading Routes?
Static Route Configuration
Navigation Guards
Resource Management
Understanding Aurelia Resources
Global Resource Registration
Feature Module Pattern
Build Configuration
Why Vite?
Modern Build with Vite
Environment Configuration
Why Environment-Specific Configuration?
Testing Strategies
Why @aurelia/testing?
Component Testing
Service Testing
Performance Optimization
Why Focus on Performance?
Code Splitting with Dynamic Imports
Bundle Analysis
Micro-Frontend Architecture
When to Use Micro-Frontends?
Trade-offs
Shell Application
Remote Module
Decision Guide: Which Architecture to Choose?
Single Repository
Monorepo
Micro-Frontends
Best Practices Summary
Last updated
Was this helpful?