{"_id":"@algorismus/elementor-jsx","_rev":"24-b32d30da0c3cea7ead86e32804909583","name":"@algorismus/elementor-jsx","dist-tags":{"latest":"2.1.1"},"versions":{"1.1.0":{"name":"@algorismus/elementor-jsx","version":"1.1.0","keywords":["elementor","wordpress","jsx","compiler","site-builder","mcp","ai-agents","page-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.1.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"d7bca5983d028307cfd2fcfb1aee6f1e2aa01b3a","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.1.0.tgz","fileCount":29,"integrity":"sha512-pkNYytjVnBafICnRh0mA9K1o6edmpqhhrYz2v6Xl2U7APRTucKOHxvR6HPWqjbZVZJHNmY7k1p5LYolXTypY8w==","signatures":[{"sig":"MEQCIHksYroEh99f1iUKvVapfiB5ea+T6PZzBdXQNZQGmVHZAiBJ9mv4mRz2AF4pPTHDKiTbFE5+2bBcFMz+AhxO6yicAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255927},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"30f494cf76841dcdb16c60ba87d281f5f099672a","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"JSX -> Elementor V4 compiler, deployer and CLI. Write small typed components, compile to native Elementor pages (atomic elements, theme parts, forms, loops, dynamic tags), deploy over REST with authoritative server-side validation, drift protection and ve","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.1.0_1785852752161_0.9204037691420726","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@algorismus/elementor-jsx","version":"1.1.1","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.1.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"74f50d5c9de50c97797b4d28ec4689457bd2afc8","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.1.1.tgz","fileCount":29,"integrity":"sha512-rFyKPMC1Ih+CafVL7+bpqrT/TCuREpaTeTsDEHqD5wiuH0Su/N6a55eSP9TcA1k5nHITGIk0vtHh/CnqicoHNQ==","signatures":[{"sig":"MEQCIDKJnhXLO3i9pfUR2J9q+OeTAFomTZl+flHY69evU+8pAiBvq6njKaH/ZvZQD0KDP0ORckw5kfb4QQ4T3/8JZUrIaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":258589},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"2154fd3349f48c2680d59c89c8c0bff66a058665","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.1.1_1785861942746_0.39730924124495326","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@algorismus/elementor-jsx","version":"1.1.2","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.1.2","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"7ffebf366183359b8a77dad9787b364355f30c66","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.1.2.tgz","fileCount":29,"integrity":"sha512-/mJ0szbc/vC3BSNwk606xSaxIgdcLKQG8nyYPcJRGxzgtqIb7EZ87WjR0i7YKd0lB+RQOADMQUVocUetRkzKOw==","signatures":[{"sig":"MEUCIQD82yaPXOUTq27n7QbbwM0YwHTqD5xly7HXuMjavpa4/gIgbr08XxQV9TYY61d2S2KVAMj8Rx+Uarn4R7ZUzxm9vLY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":259721},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"4da75d24b9bdb928f66eaf39d8117cdbccc1e1f8","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.1.2_1785875026394_0.6510188563144927","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@algorismus/elementor-jsx","version":"1.1.3","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.1.3","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"91a568cb8ee2287e7a73bbb539c20a6a3881c802","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.1.3.tgz","fileCount":29,"integrity":"sha512-qPLwYu15FSNaWaexfAw+FbFgYVhzCvWCYpyc3y5gpHeLYyzYHCpYY7+feLpr+MiK7tzvm5GG+cfuN1fAyqyAQg==","signatures":[{"sig":"MEYCIQDdrbTw/V66yWx8IVr4qrWQtigFM7eKqZ2LJb6tseRYxwIhALgLzJg/dqoC5acUVacXjH/1LxS4bRcssXJ47w+vO5BI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":260747},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"20d9613c00d50985415d57c5f37b84e1efd0d923","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.1.3_1785876968876_0.076182611683562","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@algorismus/elementor-jsx","version":"1.2.0","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.2.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"15c9dde109af28e25af2fdde61e5f943e66d9ccf","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.2.0.tgz","fileCount":29,"integrity":"sha512-/rQVSAIT9dQi4Ccw/MU8/euzJUe2aTVUt2TrE1EDqZ66xJqW44fQltskh8G/blvqAHnsD+6Hq4UED52m0asEPg==","signatures":[{"sig":"MEYCIQDhtCkwArLrrir4a/shN6I4HwaunBgb9wkE8sIGOcIMTgIhAN9xtbGqUDDx0HIOyxz5DGMzklo/4Hb3ZN8ImmFVoEPz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":262892},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"10b2986a7077774cb41466bcecf907c2686aac94","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.2.0_1785877565463_0.5614698053176519","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@algorismus/elementor-jsx","version":"1.3.0","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.3.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"4c7c01de569ddf5648e7efea233ff9c4e12f4ac5","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.3.0.tgz","fileCount":29,"integrity":"sha512-H2qKNCqNiZh7KonlkeeCi1+b6TcWUMb1/MebachPQYZLjlU4ZCG6zmdXRXmSYj/BCpUkGIOgbCwrIFpmOtlpuw==","signatures":[{"sig":"MEYCIQCybUDTwp5eb4CDZ9QHNSCNOimNY5v9XkdytHB91rSTvAIhAMftQs2O+lxIFLQl8xRr4tWPfJ6Ra8YocL90zIHr6red","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":267941},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"df8f2cfdbc7584bce4edecdb31c92404f1798065","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.3.0_1786145439323_0.23969365239598073","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@algorismus/elementor-jsx","version":"1.4.0","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.4.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"d4dc5dd06c7b433ed1ec8ba5334ee016ddcf8725","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.4.0.tgz","fileCount":29,"integrity":"sha512-CSffptFqk1gPGjoBPLAy+bUXKAwLEpBgHliIRs9ay+SE1tvsAbEErWnpt+5LQ/u2dh12maXgr0OZ0cnhq+X7iA==","signatures":[{"sig":"MEUCIGc/FCpVHdmAdwLvL6Y3qQB8GimnInO8rIWH48VVo672AiEAgLBo381k8cSSRX5XdZIlcK2YyEme86Y50++TrswVz9Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":271615},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"770d6499a386b5b555436b154b6e8186045620b3","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.4.0_1786201945343_0.17133307288997401","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@algorismus/elementor-jsx","version":"1.4.1","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.4.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"a0f148693e26926ca115acc63d4b9e67ac7555f1","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.4.1.tgz","fileCount":29,"integrity":"sha512-ze7EgouINaxHYCFYC5V4hkrjk2iQDrjiKuKbCBk5/BJVp10BWLMXhRZYoT7X2lsQPvKyAGdDkMX3uXYTbI3RAg==","signatures":[{"sig":"MEQCIAysBOjyF8pRli2x3J1KVYF/2ELicrNkrmjxlrmK5/ITAiARj0m9tbfJlZ5wGC3rAg+i0JghaKqJSFB0+9PqrI4n7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":271862},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"c4b9ce299412e6b9154b4bf97b72fc17eb6611c0","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.4.1_1786204654259_0.16227529498739313","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"@algorismus/elementor-jsx","version":"1.4.2","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.4.2","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"0bed3da24298344653637d24feb0475c55f7329f","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.4.2.tgz","fileCount":29,"integrity":"sha512-lR4S8ZaL95YB4LSjRu3BdsCn8VTVVRMMsTKpULYAej5pKa2CL8LLE4GzbMXmZj4opzh40007aUJhWwrhyC6cTg==","signatures":[{"sig":"MEYCIQDTZG+YGhgOeFee5Lk1wFlaRdTaLndJTJ0zws3J2VWH1AIhAMLqPgJiqne4vUPyt1n/++ZQF9KlH6N+2p0yHp95TnDO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273334},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"385280fe90cc995cb8f5ea49c867483b3e9c9c8f","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.4.2_1786205591214_0.39467350425059866","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"@algorismus/elementor-jsx","version":"1.4.3","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.4.3","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"30a3ea54caaf04736861934265b60e00c5bbdf4e","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.4.3.tgz","fileCount":29,"integrity":"sha512-2KwEjIbJ42OsgwdwLoQdn12thVb3ELCyzlnoypmbZ07u0yj1E/usAmdPTkenVLNHkHiB+/4EQA2aNOLFhzakPw==","signatures":[{"sig":"MEYCIQCpSmIqbXxhGYYImQ5FerS9YxOfZrEZyMFEqWUeK0YOEwIhAJ5+n0Itq8A8HebpvXNFBZXYEoQ/jJew94Uc96eClSRw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274925},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"93926f95411a09b289b80bcba11a97443e03a373","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.4.3_1786209342927_0.8071675842442323","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"@algorismus/elementor-jsx","version":"1.4.4","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.4.4","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"68480841e02daa9af82831342a89004d3b386968","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.4.4.tgz","fileCount":29,"integrity":"sha512-1evw9+J0tbuy9tuXzm8jvQksHNath17CiMh6d/koP0VB9HeRj4SaoX3mYDmz0r18Sccd7+4v4MH9jK/xTvhe6g==","signatures":[{"sig":"MEQCIGqC2YsCdxhv6ry1kZ5ojB3L9iSY9JzCOurt2gbkbP9jAiANx4pZ2M9Yl7IXs4s7gRrplRD7NScfZG1400NdYLHawg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274953},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"4c93044b5941044b3a415269aeb376554029b0d0","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.4.4_1786211249862_0.6983048625688457","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@algorismus/elementor-jsx","version":"1.5.0","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.5.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"7759111e3232285e8f06dd1a57baf955cd0457d6","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.5.0.tgz","fileCount":29,"integrity":"sha512-e68ewD7M0O/4W6o2DAwyx3Csmw3Mb973NQsWXV0+9TLLwPWRDRL4hr2eP3dXYhA+MlxjcVEs56otdZ68UdfodA==","signatures":[{"sig":"MEYCIQDDiYgK6Q3sTbosl+Q6N9kFbOKyh9vxe/0weMVWxrNzhgIhAM11X7M3Dn4Z460jpy5C2/0QQbf/RWvHOd550viNSlgL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":289137},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"b098e49fd0881d87d88c4b90bb431c3d2908fd74","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.5.0_1786301039893_0.9327940749308408","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@algorismus/elementor-jsx","version":"1.6.0","keywords":["ai-agents","agent-native","mcp","llm","elementor","wordpress","jsx","compiler","code-generation","page-builder","site-builder","cli"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.6.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://github.com/Algorismus-io/elementor-jsx#readme","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"0b2351f55a106397e0e1e85f2ab478b8b98b033b","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.6.0.tgz","fileCount":31,"integrity":"sha512-0sP4DCmesYqcx/DPYE+y0lLf7AiTddr2kCZ8eTI0wIGS7zuTQzf8srAzeIp/7Sm1JCWnnQruTerGO8jhlcvsHQ==","signatures":[{"sig":"MEQCIC25l2MYSgtywKSELVtv+xErnM0/PZLf7eZZagecjLxBAiBD5BxSgvPpbV4BC79uDh5f0Smjfl1zpycKxrKvGybncg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":314518},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"9955d3e38e75d8347340af5acdbf3549104fe8ca","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"The build layer that lets AI agents ship Elementor sites like software. Agents write small typed JSX components instead of 4,000-line _elementor_data blobs; the compiler emits native Elementor V4 JSON and deploys it over REST with authoritative server-sid","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.6.0_1786310672573_0.9122003065728506","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@algorismus/elementor-jsx","version":"1.6.1","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.6.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"501a3a3b2ff1152c222c34e309107073ba03598d","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.6.1.tgz","fileCount":32,"integrity":"sha512-AE7yUATLqmRWmyiAZlFJzkDMJf8GS6T+GbQ9XGK7WapVQYxr6GUZSG65TnzYVTh6pt2V6RPrYzqwioaSsCqwkg==","signatures":[{"sig":"MEQCIDFXymWlfUQtHuc0gyfPNkTjSXOQPvLOM5PCzBnOKPQqAiAER8cDX9n0l2GC8ciCAIevuAlLe9KLdQros625GTBOpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355517},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"a441b6b7826a4f8938d66f00b136310e728f4fb4","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.6.1_1786407315755_0.3480444557607201","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@algorismus/elementor-jsx","version":"1.7.0","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.7.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"aad6b4f922568621ed855676fba5d91548950634","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.7.0.tgz","fileCount":32,"integrity":"sha512-0JJdExPl4Jd8IiQ/i0zqsa3bfjsc2P4KYQup1gX82WiuNo0dB/hMZfPVqcbygZxuqatU605m+2gyfEr97ToKUA==","signatures":[{"sig":"MEUCIGi1HI+VdYr+Eu0kFGipZmTDT81jBysM5urxpsMWArgwAiEAwIU45RDLMl2yRym3caAR5zlVN0xVS5nVshkpQIyNDLw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":370782},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"a3dadf143c9bb079023d575da842f7e1489132a2","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.7.0_1786486405220_0.21102231356232481","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@algorismus/elementor-jsx","version":"1.7.1","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.7.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"ccde520781b61c5c29a843dbeeb24b73adec8657","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.7.1.tgz","fileCount":32,"integrity":"sha512-4OiK1VcyIEOJJ/xkhwuQMFQKUQnCwxiNRs529yU1qhClYdMwo8ehl9dEb2JpQYOc5l/nqcyQ6fJQ46oEG/v6Ug==","signatures":[{"sig":"MEUCIQDnnJdnOZPsoAyRvjUQnVRVhRG6uTTFZO7p+3CnkmxL2AIgDvHhDnwyLn2x90KhXgH4n93NHJuOo6XHj9bCOE/Fv5U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389726},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"43b1454afc4fc6c5508c4adbe87d13df5354b953","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.7.1_1786489473908_0.22360349283587588","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@algorismus/elementor-jsx","version":"1.8.0","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.8.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"c74594e6abdb5b89464362d21ed3f6881c574067","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.8.0.tgz","fileCount":32,"integrity":"sha512-tftwYP0yrksPsBVJbjPf2teaeB01svmZPNuRuJPMjk0SG6znS2o7vC9e9p4SjezBiwVRnDwP8G0lC3SBds+UYA==","signatures":[{"sig":"MEYCIQDiNYKgS/1prI7+n0DL29P6CSd6f84h5okPZ3wlygDtHgIhANK7Pap7RirINyP9HQzSaRns1vZ0OPkbgaXx8wsnZk4h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416943},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"40c2eb867885a0a2c3fc50945f2704f6a9253f22","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.8.0_1786490799219_0.2074294192741275","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@algorismus/elementor-jsx","version":"1.9.0","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.9.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"be8414c8e8d33d9f87d50ea874b51dd7bcbea2a4","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.9.0.tgz","fileCount":33,"integrity":"sha512-d5XPMIQmOCFjeKZexqvCUlBHgT/USWdLvIJ++884acObCPor3Gn0XRnJJ15sY4CeBQP/ncw4KHFir8Pa6zFFZQ==","signatures":[{"sig":"MEUCIQC+OzUR5gB6CPmjyxt/Oy/BbE+KWYFoPsH5r6Yx0OvKlgIgTmJujdZxiRirGIxdqp+AOSwFF1foqukr3TPjAKC/Oyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":454166},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"adfbdecddc363ef8a9cc020ce8d8f687c0710482","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.9.0_1786492275348_0.42284704623670466","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@algorismus/elementor-jsx","version":"1.9.1","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.9.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"dafe3fc50f9082946ccdff02e1e3555ac4f0edbf","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.9.1.tgz","fileCount":33,"integrity":"sha512-ZXOGJDTQWUDafxtN1GVqjnEie0r8cPzRXvIwgyhhfnH7wu1XdXc7aQHZMmsuanf4LJ7AoZg9GKcN0CXJ5uhabA==","signatures":[{"sig":"MEUCIQCIFDJJkmIFchULezDp/GHEgvkBVi1+TnYE12RDJMqE3gIgexMONIXF+VFGy4lChAu3RCk9me48aiXPPp+UktXCXMc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":469889},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"313e8044e54de4ad91c2266c53cb0660a11fecf1","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.9.1_1786496808588_0.8174613410365117","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@algorismus/elementor-jsx","version":"1.9.2","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@1.9.2","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"ee6a90c7b2363b1f7114062fde2a62bbe20e5715","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-1.9.2.tgz","fileCount":33,"integrity":"sha512-dO/Xe7bcdhf4x6bI08afXNOzi+Y5+J6ed7fDcnMlK7SyuQZjfLYgPxkwIoyJQqzhuG41TDluk41IZgGJpqMLFw==","signatures":[{"sig":"MEUCIGgIeCfsmeUK/QHTvP4CAQ8o79Xb43dVZc03B/1OoFuwAiEAtXLB4uXbx5WYoqnbnBtBBbZ+P5nhAlX8/CVHklMhTJA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":499669},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"063036d7dfc3801882bffa04d18655ba67842841","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_1.9.2_1786509553492_0.12169970285425213","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@algorismus/elementor-jsx","version":"2.0.0","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@2.0.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"10edcbf210f45a9501b50946addb4d71576ee8ba","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-2.0.0.tgz","fileCount":33,"integrity":"sha512-XO59hgUkVJaX+gDwXtuBU99oR+phRbH8kb4G7sLnQFWSFFo5WrmfJCMT/OZenX4qMT22zPPVmzhOprUoIPpJSw==","signatures":[{"sig":"MEYCIQCQ9mBdO+zO9Utfji7W6pjR82DnwXarlG+K0Fu4fgjYOgIhALDV74RfXWEZaBo7djLY7lxsmPrXQGe4bjgqCWcd1njz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":527013},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"70aba5cfc6a1696882aa1bf72071c46bce7404d5","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_2.0.0_1786514460105_0.10297086513877773","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@algorismus/elementor-jsx","version":"2.0.1","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@2.0.1","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"07d3c9b326d550f294bbb4da647c50803c3ec04d","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-2.0.1.tgz","fileCount":34,"integrity":"sha512-QrXzpgLAmF0D3TZC3LlPukLEIX5JXT2QMWLFXQdeInbcMsgg0sg8J+VX2p72RN0EjhdgSuww3nAlO+z5uIlhtQ==","signatures":[{"sig":"MEYCIQC0dRWoUJm9XoXFklP4uoyWXX9pjQDD1H/3/MlprW2HBAIhALAL8bvDFCJOo5spSLaZEE61zKsddsEZXlp5lxRC0Jq+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":587445},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"6450358f36f2ce526a11166a7c01238f73eeb412","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_2.0.1_1786909424324_0.7965034899304768","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@algorismus/elementor-jsx","version":"2.1.0","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"author":{"url":"https://algorismus.io","name":"Algorismus","email":"shahmir@algorismus.io"},"license":"MIT","_id":"@algorismus/elementor-jsx@2.1.0","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"homepage":"https://exjsx.dev","bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"bin":{"exjsx":"src/cli.mjs"},"dist":{"shasum":"7a98aa4560eb3f3c2603be0170e836860abd52bd","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-2.1.0.tgz","fileCount":34,"integrity":"sha512-Iz7SVFAWkJhRkEZeAOT/wFr8E0sMlA+pm1k8Dy3TrHnnqHyLmoOyNeyf1Nod/HUAco6CXUD5d2UP2zy+kf9ODQ==","signatures":[{"sig":"MEYCIQC3hwRGH9Mc0iWOM1cK5HWn0vTqydgNCqDE+j6pMpFs5gIhAMgdnpOexSR2fQJC7sNFafY3XIaYIiE614FpLkkDzeUn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":620745},"type":"module","types":"./types.d.ts","engines":{"node":">=18"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./tw":"./src/tw.mjs","./kit":"./src/kit/kit.mjs","./lint":"./src/lint.mjs","./site":"./src/site.mjs","./media":"./src/media.mjs","./theme":"./src/theme.mjs","./deploy":"./src/deploy.mjs","./inline":"./src/inline.mjs","./bundler":"./src/bundler.mjs","./compile":"./src/compile.mjs","./inspect":"./src/inspect.mjs","./prelude":"./src/prelude.mjs","./project":"./src/project.mjs","./runtime":"./src/runtime.mjs","./decompile":"./src/decompile.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx"},"gitHead":"3fa3f6bc38a0de2eba7f0b42fbff62127b494a44","scripts":{"test":"node --test test/unit/*.test.mjs","build":"node src/cli.mjs build","corpus":"node test/corpus/run.mjs","deploy":"node src/cli.mjs deploy","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"repository":{"url":"git+https://github.com/Algorismus-io/elementor-jsx.git","type":"git"},"_npmVersion":"10.9.7","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"esbuild":"^0.24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"pngjs":"^7.0.0","pixelmatch":"^7.2.0","typescript":"^5.9.0"},"_npmOperationalInternal":{"tmp":"tmp/elementor-jsx_2.1.0_1786967925863_0.9095480673199294","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@algorismus/elementor-jsx","version":"2.1.1","type":"module","description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","bin":{"exjsx":"src/cli.mjs"},"types":"./types.d.ts","scripts":{"build":"node src/cli.mjs build","deploy":"node src/cli.mjs deploy","test":"node --test test/unit/*.test.mjs","corpus":"node test/corpus/run.mjs","test:it":"EXJSX_IT=1 node --test --test-concurrency=1 'test/integration/*.test.mjs'","test:all":"npm test && npm run test:it","prepublishOnly":"npm test"},"dependencies":{"esbuild":"^0.24.0"},"devDependencies":{"pixelmatch":"^7.2.0","pngjs":"^7.0.0","typescript":"^5.9.0"},"exports":{".":"./src/x.mjs","./x":"./src/x.mjs","./prelude":"./src/prelude.mjs","./bundler":"./src/bundler.mjs","./site":"./src/site.mjs","./kit":"./src/kit/kit.mjs","./components":"./src/kit/kit-components.mjs","./jsx-components":"./src/components/index.jsx","./runtime":"./src/runtime.mjs","./theme":"./src/theme.mjs","./compile":"./src/compile.mjs","./tw":"./src/tw.mjs","./deploy":"./src/deploy.mjs","./decompile":"./src/decompile.mjs","./media":"./src/media.mjs","./inline":"./src/inline.mjs","./inspect":"./src/inspect.mjs","./lint":"./src/lint.mjs","./project":"./src/project.mjs"},"license":"MIT","engines":{"node":">=18"},"keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"repository":{"type":"git","url":"git+https://github.com/Algorismus-io/elementor-jsx.git"},"bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"homepage":"https://exjsx.dev","author":{"name":"Algorismus","email":"shahmir@algorismus.io","url":"https://algorismus.io"},"publishConfig":{"access":"public"},"_id":"@algorismus/elementor-jsx@2.1.1","gitHead":"af3230b1482a125a938b9a538ebc326661950754","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-DN/5TQ3y+V8c+7AqKfWp2+sv3RHk5TBjCwMSYiLZ83ewnic4UedRylAY6VI6Jn0U4YRYlw4xlyqQAcfeT24Uww==","shasum":"0eeb3b839c48148a82c7327048f4a9149cb05ec1","tarball":"https://registry.npmjs.org/@algorismus/elementor-jsx/-/elementor-jsx-2.1.1.tgz","fileCount":34,"unpackedSize":640364,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD3/uJWI1M4HCXGj1y5JsCMGp2SVVfIxyv3ITGnVEXPxAIhAI6q9Yd+yD+o0BWZnnWr6gLC6RFDBOx002Fb2SWfnn2S"}]},"_npmUser":{"name":"algorismus","email":"shahmir@algorismus.io"},"directories":{},"maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/elementor-jsx_2.1.1_1787035166411_0.9832835381062284"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-04T14:12:31.905Z","modified":"2026-08-18T06:39:26.701Z","1.1.0":"2026-08-04T14:12:32.301Z","1.1.1":"2026-08-04T16:45:42.884Z","1.1.2":"2026-08-04T20:23:46.536Z","1.1.3":"2026-08-04T20:56:09.068Z","1.2.0":"2026-08-04T21:06:05.641Z","1.3.0":"2026-08-07T23:30:39.492Z","1.4.0":"2026-08-08T15:12:25.490Z","1.4.1":"2026-08-08T15:57:34.482Z","1.4.2":"2026-08-08T16:13:11.379Z","1.4.3":"2026-08-08T17:15:43.100Z","1.4.4":"2026-08-08T17:47:30.065Z","1.5.0":"2026-08-09T18:44:00.071Z","1.6.0":"2026-08-09T21:24:32.755Z","1.6.1":"2026-08-11T00:15:15.967Z","1.7.0":"2026-08-11T22:13:25.393Z","1.7.1":"2026-08-11T23:04:34.094Z","1.8.0":"2026-08-11T23:26:39.371Z","1.9.0":"2026-08-11T23:51:15.706Z","1.9.1":"2026-08-12T01:06:48.757Z","1.9.2":"2026-08-12T04:39:13.661Z","2.0.0":"2026-08-12T06:01:00.271Z","2.0.1":"2026-08-16T19:43:44.475Z","2.1.0":"2026-08-17T11:58:46.045Z","2.1.1":"2026-08-18T06:39:26.561Z"},"bugs":{"url":"https://github.com/Algorismus-io/elementor-jsx/issues"},"author":{"name":"Algorismus","email":"shahmir@algorismus.io","url":"https://algorismus.io"},"license":"MIT","homepage":"https://exjsx.dev","keywords":["elementor","wordpress","ai","ai-agents","jsx","compiler","page-builder","website-builder","mcp","claude","cursor","site-generator","elementor-widgets","wordpress-automation","exjsx","claude-code","elementor-mcp","ai-website-builder","wordpress-ai"],"repository":{"type":"git","url":"git+https://github.com/Algorismus-io/elementor-jsx.git"},"description":"Build Elementor sites with AI agents — typed JSX in, native editable Elementor pages out over REST. Hot reload dev loop, verification gates, 400+ test certified. The exjsx CLI.","maintainers":[{"name":"algorismus","email":"shahmir@algorismus.io"}],"readme":"# elementor-jsx\n\n**The build layer for AI agents that ship Elementor sites.**\n\nPoint an agent at Elementor's `_elementor_data` and it emits a 4,000-line JSON blob nobody\ncan review — and it re-emits the whole thing on every change, throwing away edits. elementor-jsx\nis the layer in between: the agent writes **small typed JSX components**, the compiler emits\n**native Elementor V4 JSON**, and every run is a **git diff you approve** instead of JSON you audit.\n\nBuilt agent-first — typed props fail at build time, an authoritative server-side validator rejects\nbad trees before they ever save, and MCP tools give an agent a real API instead of a blank file.\nHumans get the same ergonomics; the design center is the agent.\n\nReact-level JSX → Elementor V4 compiler + one-shot deployer. Full Elementor catalog parity (every\natomic element — flexbox/div-block, the native `e-grid` container (4.2+), the full e-form family\nincluding its status messages, tabs, media, loops — plus theme parts, dynamic tags, interactions,\nSEO), certified on Elementor **4.1.4 → 4.2.1** (version adapters translate prop-format changes per\nversion) by a **678-test** suite that runs against a real WordPress stack.\n\nPairs with the [Elementor Ultra MCP server](https://github.com/Algorismus-io/elementor-ultra-mcp)\n(the agent's ~90-tool control surface) and the [one-command installer](https://github.com/Algorismus-io/create-elementor-ultra).\n\nMIT licensed. Not affiliated with or endorsed by Elementor Ltd — \"Elementor\" is their trademark;\nthis is an independent compiler that targets their page format.\n\n## Quickstart\n\nRequirements: Node ≥ 18 · a WordPress site with **Elementor ≥ 4.1.4** (V4 atomic\nexperiments on) and the **[elementor-ultra companion plugin](https://github.com/Algorismus-io/elementor-ultra-mcp)** (ships the deploy/validate\nREST endpoints — zip in the GitHub release, source in that repo) · an [application password](https://wordpress.org/documentation/article/application-passwords/).\n\n```sh\nnpm i -D @algorismus/elementor-jsx\nnpx exjsx init site            # scaffold theme.mjs + pages/home.page.jsx\nnpx exjsx build site           # compile → site/site.bundle.json\nWP_URL=https://your-site.com WP_USER=admin WP_APP_PASSWORD=xxxx \\\nnpx exjsx deploy site/site.bundle.json\n```\n\nThat's it — the page is live, native, and editable in the Elementor editor. Re-run\ndeploy any time: it's idempotent, and drift hashes protect pages someone hand-edited\nin the editor (`--force` to overwrite deliberately).\n\n## Authoring — by an agent or by you\n\nThe same source works whether an agent generates it over MCP or you hand-write it. An agent tends\nto compose the small typed components below and let the compiler + server validation catch mistakes;\nthe result is a diff you review, not a JSON tree you trust on faith.\n\n```jsx\nimport { defineSite } from 'elementor-jsx';\nimport { defineTheme } from 'elementor-jsx/theme';\nimport { dyn, loopGrid } from 'elementor-jsx/kit';\n\nconst theme = defineTheme({ name: 'brand', color: { primary: '#B31E2C', ink: '#101418' }, font: { head: 'Sora' } });\n\nexport default defineSite({\n  name: 'mysite', theme,\n  parts: {\n    header:  { node: <SiteHeader /> },                       // site-wide (Pro theme-builder)\n    footer:  { node: <SiteFooter /> },\n    single:  { node: <PostTemplate /> },                     // dynamic post template\n    archive: { node: <BlogIndex /> },\n    error404:{ node: <Lost /> },\n    popup:   { node: <Offer />, display: { pageLoad: 2 } },\n  },\n  pages: [{\n    title: 'Home', slug: 'home', template: 'elementor_header_footer',\n    seo: { title: 'Home | Brand', description: '…', ogImage: 'https://…' },\n    node: (\n      <section pad={[96, 24]} bg={theme.color.primary}>\n        <h1 animate={{ effect: 'fade', trigger: 'load' }} color=\"#fff\" size={56}>Hello</h1>\n        <text tw=\"text-lg leading-relaxed max-w-xl text-white max-md:text-[15px]\">Tailwind subset works too.</text>\n        {loopGrid({ source: 'post', perPage: 3 }, [/* dyn.postTitle() … */])}\n      </section>\n    ),\n  }],\n});\n```\n\n```\nnpx exjsx init  [dir]                # scaffold a minimal fs-project\nnpx exjsx build site.jsx             # offline: JSX -> deployable bundle\nnpx exjsx build mysite/                    # fs-project: pages/ + parts/ + theme.mjs discovered & wired\nnpx exjsx deploy site.bundle.json    # 2 kit writes + N page upserts (idempotent)\nnpx exjsx watch site.jsx --deploy   # rebuild+deploy on save\nnpx exjsx build site.jsx --inline   # self-contained pages (multi-tenant kits)\nnpx exjsx decompile tree.json        # adopt an existing Elementor page into JSX\nnpx exjsx lint site.jsx --strict     # conventions check (CONVENTIONS.md) — CI gate\nnpx exjsx inspect site.bundle.json   # readable bundle dump (custom_css decoded)\nnpx exjsx media manifest.mjs        # hash-cached asset sideloading\n```\n\n## What's inside\n\n- `src/kit/` — **the canonical authoring kit** (typed envelopes, every atomic element,\n  forms, tabs, video, dynamic tags, loops, interactions, `assertTree` shift-left gates).\n  The elementor-ultra skill's old `lib/kit*.mjs` paths are re-export shims of these files.\n- `src/x.mjs` + `src/prelude.mjs` + `src/bundler.mjs` — the import system: `elementor-jsx` barrel\n  (every primitive, coverage-tested), auto-injected prelude (use `tabs`/`dyn`/`fontLoader`/`Page`…\n  with ZERO imports in built files), bare-specifier resolution without node_modules.\n- `src/runtime.mjs` — JSX render engine (theme context, intrinsics, kit-node mixing).\n  Intrinsic tags: `box`/`div`/`row`/`col`/`section` (containers), `h1`–`h4`/`heading`,\n  `text`/`p` (add `href` for a real anchor — there is no `<a>`/`<button>`), `img`, `html`.\n- `src/tw.mjs` — Tailwind-subset `tw=\"\"` prop (`tw=\"flex flex-col py-24 px-6 gap-8 bg-[#0A2230]\"`),\n  desktop-first (`max-lg:` → tablet, `max-md:` → mobile); plus standard CSS property-name\n  aliases in sx (`padding`, `maxWidth`, `textAlign`, …). In-distribution authoring for\n  models: no skill docs needed to write valid styles. Unknown utilities throw at compile.\n- `src/compile.mjs` — site → bundle (id normalization, class dedup, theme parts, carriers)\n- `src/deploy.mjs` — one-shot deploy (variables + registry + pages + parts + SEO runtime),\n  version-adaptive (4.1↔4.2), idempotent, registry-namespace-owning\n- `src/decompile.mjs` — any V4 tree → editable JSX (dynamic tags, interactions, full fidelity)\n- `types.d.ts` — the typed public API (incl. global JSX namespace — editor autocomplete on intrinsics)\n- `CONVENTIONS.md` — the authoring doctrine; every rule cites the incident it prevents, and\n  `src/lint.mjs` (`exjsx lint`) enforces the mechanical subset\n\n## Fresh dev environment (one command)\n\n```\ngit clone https://github.com/Algorismus-io/elementor-jsx && cd elementor-jsx && npm install\nEXJSX_ULTRA_ZIP=/path/to/elementor-ultra-mcp.zip sh dev/setup.sh\nnpm test                     # 522 offline tests\nEXJSX_IT=1 npm run test:it   # 39 live tests against the fresh stack\n```\n\n`dev/setup.sh` is idempotent: it stands up an isolated docker stack (`exjsx-dev`,\nWordPress + MySQL on :8918), installs Elementor (pinned, default 4.2.0) + the\nelementor-ultra companion plugin (deploy endpoints), fixes mu-plugins perms, seeds\nfixture media, creates an app password, and writes `.env` — including\n`EXJSX_FIXTURE_IMG` (fixture attachment id) and the DB plumbing the integration\nharness uses for snapshot/restore isolation. Optional `.env` extras for the browser\ntiers: `EXJSX_IT_PLAYWRIGHT` (a playwright install) and `EXJSX_ULTRA_CLI` (the\nelementor-ultra cli for audit/screenshots) — those tests skip gracefully without them.\nVisual baselines are keyed per stack port (`test/baselines/*@<port>.png`); a new\nstack seeds its own on first run. Pro tests skip unless elementor-pro is installed\n(drop the zip in via `wp plugin install`, keep it inactive — tests activate it\ninside their snapshot window).\n\n## Tests = the contract\n\n`npm test` (522 unit, offline) · `EXJSX_IT=1 npm run test:it` (live, needs the\nwpos stack). **`test/README.md` is the verified-facts catalog** — every rendering\nclaim in this package is enforced there, incl. the 4.1↔4.2 span migration, XSS\nposture, and 13 field-found bugs. The coverage audit fails the suite if any export\nships untested.\n\n## License\n\n[MIT](LICENSE) © 2026 [Algorismus](https://algorismus.io). Free forever — the whole stack is open source:\nthis compiler/CLI/kit (MIT), the [Elementor Ultra MCP server](https://github.com/Algorismus-io/elementor-ultra-mcp)\n(MIT) and its companion WordPress plugin (GPL-2.0-or-later).\n","readmeFilename":"README.md"}