What problem does it solve? When designing utility modules, formatting libraries, schema definitions, or service-layer wrappers in a JavaScript SPA, it is easy to over-export internals, pollute the global scope, or hurt tree-shaking. This Skill provides clear rules for deciding what to export, what to keep file-private, and how module shape affects bundling and testability. ## Core Features & Use Cases - Export Strategy Guidance: Explains when to use named exports, default exports, and namespace imports, with concrete code examples. - Encapsulation Rules: Shows how module-scoped declarations keep values private and prevent naming collisions across files. - Dynamic Import Patterns: Covers on-demand module loading with import() to reduce initial bundle size, including template-literal paths. - Use Case: You are writing a new date-formatting utility library for your SPA and need to decide which helpers to export, which to keep private, and whether to lazy-load locale data. ## Quick Start Ask the assistant to apply the module pattern skill when designing a new JavaScript utility module so it can advise on exports, privacy, and dynamic imports.