{"id":27437,"library":"tandem-paperclip-dev-tools","title":"Tandem Paperclip Dev Tools","description":"Development tools for Tandem's Paperclip component system. Version 1.0.3. This package is intended to scan project directories for .pc (Paperclip) files, filter components with <meta name=\"preview\" />, generate preview hashes based on <meta name=\"hash\" value=\"[generated by tandem]\">, generate .d.ts files, and keep Paperclip files organized. It also includes a vanilla transpiler for Paperclip templates, with support for hooks like import, style, if conditions, event registering, and repeat. The package appears to be in early development with many TODOs remaining. No release cadence documented. Key differentiator: integrates with Tandem's visual editor ecosystem and the Paperclip component format.","status":"active","version":"1.0.3","language":"javascript","source_language":"en","source_url":null,"tags":["javascript"],"install":[{"cmd":"npm install tandem-paperclip-dev-tools","lang":"bash","label":"npm"},{"cmd":"yarn add tandem-paperclip-dev-tools","lang":"bash","label":"yarn"},{"cmd":"pnpm add tandem-paperclip-dev-tools","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core Paperclip library, likely required for component parsing and generation","package":"tandem-paperclip","optional":false}],"imports":[{"note":"ESM imports are preferred; CommonJS require still works but avoid destructuring from require","wrong":"const Transpiler = require('tandem-paperclip-dev-tools').Transpiler","symbol":"Transpiler","correct":"import { Transpiler } from 'tandem-paperclip-dev-tools'"},{"note":"Ensure named export matches exactly, documentation may be incomplete","wrong":"const { scanPaperclipFiles } = require('tandem-paperclip-dev-tools')","symbol":"scanPaperclipFiles","correct":"import { scanPaperclipFiles } from 'tandem-paperclip-dev-tools'"},{"note":"Default export is not available; this is a named export","wrong":"import generatePreviewHash from 'tandem-paperclip-dev-tools'","symbol":"generatePreviewHash","correct":"import { generatePreviewHash } from 'tandem-paperclip-dev-tools'"}],"quickstart":{"code":"import { Transpiler, scanPaperclipFiles } from 'tandem-paperclip-dev-tools';\n\nconst files = scanPaperclipFiles('./src');\nconst transpiler = new Transpiler();\nfor (const file of files) {\n  const result = transpiler.transpile(file.content);\n  console.log(result);\n}","lang":"typescript","description":"Scans for Paperclip files in a directory and transpiles them using the built-in Transpiler."},"warnings":[{"fix":"Pin to a specific version and test upgrades manually; treat as pre-1.0.","message":"API is unstable and likely to change; many features are not yet implemented (see README TODOs).","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"Wrap imports in a // @ts-ignore comment or create a .d.ts declaration file manually.","message":"Package currently does not export types properly; TypeScript users may need to declare module or use @ts-ignore.","severity":"gotcha","affected_versions":"<=1.0.3"},{"fix":"Avoid using event registrator features until a stable release; use manual DOM event handlers instead.","message":"The vanilla transpiler's event registration API is not yet implemented; attempting to use it will throw.","severity":"deprecated","affected_versions":">=1.0.0 <1.1.0"},{"fix":"Pass a specific directory or use glob patterns to exclude node_modules.","message":"scanPaperclipFiles does not ignore node_modules by default; scanning a large project may cause performance issues.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Wait for future updates; avoid using these tags in templates if you need transpilation.","message":"The <import /> and <style /> tags in Paperclip templates are not yet supported by the transpiler.","severity":"deprecated","affected_versions":">=1.0.0 <1.1.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run npm install tandem-paperclip-dev-tools or check package.json for correct name.","cause":"Package is not installed or misspelled in npm install command.","error":"Error: Cannot find module 'tandem-paperclip-dev-tools'"},{"fix":"Check the import: import { Transpiler } from 'tandem-paperclip-dev-tools'. Try transpiler['transpile'] or inspect the instance.","cause":"Transpiler class may not have the expected method or was imported incorrectly.","error":"TypeError: transpiler.transpile is not a function"},{"fix":"Use a // @ts-ignore comment before import or add a declaration module in a .d.ts file: declare module 'tandem-paperclip-dev-tools';","cause":"TypeScript cannot find the named export because package does not ship types.","error":"Module '\"tandem-paperclip-dev-tools\"' has no exported member 'scanPaperclipFiles'."},{"fix":"Install tandem-paperclip: npm install tandem-paperclip.","cause":"Required peer dependency tandem-paperclip is not installed.","error":"Error: Cannot find module 'tandem-paperclip'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}