Skip to content
integration-layer logo

Integration Layer

integration-layer

Infrastructure and integration patterns for src/app/integration, including Firebase/AngularFire usage, Data Connect codegen, repository adapters, DTO mapping, and streaming boundaries; use when touching persistence, external APIs, or platform SDKs.

NeverSight/skills_feed0installs213stars

SKILL.md

Full skill instructions

Integration Layer

Intent

Implement external integrations (Firebase, Data Connect, HTTP, SDKs) behind stable ports so the rest of the app stays framework-agnostic.

Layer Boundaries

  • Only integration/​infrastructure may import Firebase/​AngularFire/​DataConnect SDKs.
  • Expose interfaces/​tokens to Application; never expose platform types.

Repository Adapters

  • Implement repository ports with minimal mapping:
    • DTO <-> Domain mapping happens here (or in dedicated mappers within integration).
    • Keep mapping deterministic; normalize timestamps/​IDs.

Streams and Signals

  • Integration may return Observables (streaming) or Promises (commands).
  • Convert to signals at the Application boundary (store/​facade), not in templates.
  • Ensure cleanup: avoid manual subscriptions unless lifecycle-bound.

Data Connect

  • Treat generated SDK as read-only output.
  • After schema changes, regenerate before app code changes.
  • Enforce auth directives and least-privilege queries.

Security

  • Never trust client input.
  • Keep secrets in env/​secret manager, not in source.
  • Avoid string-concatenated queries; use parameterized APIs.