shlogg · Early preview
Ramu Narasinga @karthik-m22

Understanding Signals In React-Scan: A State Management Primer

React-Scan uses Preact's Signals for state management. Signals are reactive primitives that automatically update components & UI when state changes, providing excellent ergonomics & performance.

In this article, we review how the store is managed in react-scan source code. The below code is picked from packages/scan/core/src/index.ts.

export const Store: StoreType = {
  wasDetailsOpen: signal(true),
  isInIframe: signal(
    typeof window !== 'undefined' && window.self !== window.top,
  ),
  inspectState: signal<States>({
    kind: 'uninitialized',
  }),
  monitor: signal<Monitor | null>(null),
  fiberRoots: new Set<Fiber>(),
  reportData: new Map<number, RenderData>(),
  legacyReportData: new Map<string, RenderData>(),
  lastReportTime: signal(0),
};

    
    

    
    




You wi...