Files
breakpilot-compliance/breakpilot-compliance-sdk
Sharang Parnerkar 9ecd3b2d84 refactor(sdk): split hooks, dsr-portal, provider, sync approaching 500 LOC
All four files split into focused sibling modules so every file lands
comfortably under the 300-LOC soft target (hard cap 500):

  hooks.ts (474→43)  → hooks-core / hooks-dsgvo / hooks-compliance
                        hooks-rag-security / hooks-ui
  dsr-portal.ts (464→129) → dsr-portal-translations / dsr-portal-render
  provider.tsx (462→247)  → provider-effects / provider-callbacks
  sync.ts (435→299)       → sync-storage / sync-conflict

Zero behaviour changes. All public APIs remain importable from the
original paths (hooks.ts re-exports every hook, provider.tsx keeps all
named exports, sync.ts preserves StateSyncManager + factory).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 08:40:20 +02:00
..

breakpilot-compliance-sdk

TypeScript SDK monorepo providing React, Angular, Vue, vanilla JS, and core bindings for the BreakPilot Compliance backend. Published as npm packages.

Stack: TypeScript, workspaces (packages/core, packages/react, packages/angular, packages/vanilla, packages/types).

Layout

packages/
├── core/       # Framework-agnostic client + state
├── types/      # Shared type definitions
├── react/      # React Provider + hooks
├── angular/    # Angular service
└── vanilla/    # Vanilla-JS embed script

Architecture

Follow ../AGENTS.typescript.md. No framework-specific code in core/.

Build + test

npm install
npm run build     # per-workspace build
npm test          # Vitest (Phase 4 adds coverage — currently 0 tests)

Known debt (Phase 4)

  • packages/vanilla/src/embed.ts (611), packages/react/src/provider.tsx (539), packages/core/src/client.ts (521), packages/react/src/hooks.ts (474) — split.
  • Zero test coverage. Priority Phase 4 target.

Don't touch

Public API surface of core without bumping package major version and updating consumers.