Architecture: How to unify branding and SEO across 6 Angular apps in the m...

Documentation for Sessions

🏗️ Architecture: How to unify branding and SEO across 6 Angular apps in the m...

Date: 2026-02-27
Time: 23:47:24 UTC
Session: gspace1-151.2
Agent: angular
Confidence: 92%
Status: ✅ Documented


📋 Decision Context

Question:

How to unify branding and SEO across 6 Angular apps in the monorepo?

Task: Session 151: Unified branding and SEO across all apps


🎯 Decision Made

Chosen:

Created @libs-foundational/brand-seo library with AppBrand model, BrandTitleStrategy, SeoService, SeoContextService, FaviconService, JsonLdService, and provideBrandSeo() one-line provider function. DRY index.html via generator script.

Options Considered:

  1. Custom TitleStrategy + SeoService in a foundational lib
  2. ngx-meta third-party library
  3. Per-app SEO services with no shared lib
  4. Route data-driven SEO with no service layer

💭 Reasoning

Zero SEO infrastructure existed across 6 apps. Needed a foundational library pattern (like api-config) that every app imports with a single provider call. Custom TitleStrategy handles automatic Page | Space | Universe title formatting. Signal-based SeoContextService enables dynamic space/universe context without prop drilling. Generator script eliminates 1200+ lines of duplicated loader CSS across index.html files. Per-app brand presets (6 files) keep config co-located and type-safe.


📁 Files Involved


🔗 Related


Auto-generated by MCP Smart Consolidation