What problem does it solve? Client Jac compiles to JavaScript, but key browser interop idioms differ from both Python and JS, causing parse errors, silent runtime crashes, and misleading compiler warnings when developers guess the syntax. ## Core Features & Use Cases - JS Constructor and Callback Idioms: Covers the new(Cls, ...) builtin for WebSocket, URL, Date, CustomEvent, and Promise, plus .call(None, ...) for invoking stored callbacks. - Module State and Browser Globals: Documents glob module-level state, localStorage, window/document access, timers, and JSON helpers available without imports. - Recipes and Gotchas: Provides WebSocket, CustomEvent bus, polling, debounce, and RAF patterns, plus fixes for chr(10) newline emission, let-scoping TDZ crashes, and is None versus undefined checks. - Use Case: When building a Jac client component that opens a WebSocket, dispatches cross-component events, or debounces input, load this Skill to write correct interop code and debug the compiled output in .jac/client/. ## Quick Start Load this Skill and show me how to connect a WebSocket in client Jac and handle incoming messages safely.