{"_id":"@aphrody/m3-tokens","_rev":"7-f688a892a6b351166f74e28cd6661b16","name":"@aphrody/m3-tokens","dist-tags":{"latest":"3.3.3"},"versions":{"3.2.1":{"name":"@aphrody/m3-tokens","version":"3.2.1","author":{"name":"aphrody-code"},"license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.2.1","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"5888719431118732d9be1d8e6d617e7ca2ffe8c8","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.2.1.tgz","fileCount":12,"integrity":"sha512-E0Zl3zkTSX80OQUOkd0eCl9wYDcWOCjh9xoWxR15syrF8ybpZF6BqhjY45V6xSdklXfE/+d/xtluKbuhyaRKgA==","signatures":[{"sig":"MEUCIACtqKVEw4tHIrTiQU85UogwbSAJ2UizvR8dRtC3THD6AiEAiNdLzR1jpfE+1KGUNtHT7RX05L1lGef8viLscp7UiQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42011},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"}},"gitHead":"51c03378d2db53d745768c68337d3410fedd1e55","scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsc -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"9.2.0","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@material/material-color-utilities":"catalog:"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"catalog:","typescript":"catalog:","@types/node":"catalog:"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.2.1_1780527216897_0.6427012466102902","host":"s3://npm-registry-packages-npm-production"}},"3.2.2":{"name":"@aphrody/m3-tokens","version":"3.2.2","author":"aphrody-code","license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.2.2","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"a93073a5712f38515af38ac0166bcf62831d094a","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.2.2.tgz","fileCount":12,"integrity":"sha512-D90/S+XsGLnVmuUome+hHAOLVyiMLpGod72N4diT6NRJtZZFUlmVPhRDMxa/x5feIfvZwLO6HrkHx14lZR8YGg==","signatures":[{"sig":"MEUCID7Y4ZvZORoTjGdvkEEM/HII1EcQb9e5cBCns6q2lmrLAiEA42Ufzbua3aFNRUwETNeSheKq9/9JfGsja+Ama6ltw6E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42004},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","shasum":"a93073a5712f38515af38ac0166bcf62831d094a","exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"}},"scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsc -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"_integrity":"sha512-D90/S+XsGLnVmuUome+hHAOLVyiMLpGod72N4diT6NRJtZZFUlmVPhRDMxa/x5feIfvZwLO6HrkHx14lZR8YGg==","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"10.8.3","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@material/material-color-utilities":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3","@types/node":"^25.9.1"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.2.2_1780527922969_0.35966543178783184","host":"s3://npm-registry-packages-npm-production"}},"3.2.4":{"name":"@aphrody/m3-tokens","version":"3.2.4","author":"aphrody-code","license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.2.4","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"f2e1b11360309425b512bcfc39017889c562bd55","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.2.4.tgz","fileCount":12,"integrity":"sha512-1Rtt6Qnj+NtS1dUigBQ/vFCnkr3YO0hwR2AeMTVAi9Akpt7hnFy0hKrcTFmuz+P2ohlRduHWsJXmsuLKsjOC7A==","signatures":[{"sig":"MEQCICg5RL8rVn1GXs0xqhfCqYYvM7zqPRO7DHVEfw7mOPZLAiBAxflxfyTDCFUW2RdctcHpkv8hhwB46gLuu2GAUqUarQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41994},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","shasum":"f2e1b11360309425b512bcfc39017889c562bd55","exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"}},"scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsc -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"_integrity":"sha512-1Rtt6Qnj+NtS1dUigBQ/vFCnkr3YO0hwR2AeMTVAi9Akpt7hnFy0hKrcTFmuz+P2ohlRduHWsJXmsuLKsjOC7A==","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"10.8.3","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@material/material-color-utilities":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^6.0.3","@types/node":"^25.9.1"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.2.4_1786525654678_0.7795487894516901","host":"s3://npm-registry-packages-npm-production"}},"3.2.5":{"name":"@aphrody/m3-tokens","version":"3.2.5","author":{"name":"aphrody-code"},"license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.2.5","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"96a8734961bb07cc8b91b8d4d7f722c10185775a","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.2.5.tgz","fileCount":12,"integrity":"sha512-InOGcKQQI4u0/70nFM8EZ3uGvXaQgFSWGu7UNZwZhOn9U+QhWroCw1aaxhHGYb/FTvTsQbndRjTsvDIUF9CzkA==","signatures":[{"sig":"MEQCIEUxeRPTz/LbPWQfzq8xqj4Rubd3nIgpoVTKbEBN6zokAiBXCPPbuF/UvFEEA33JPSHy1bdEerFsboZ9zrsh0U7D1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42004},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"}},"gitHead":"6981e124848acb9ce5364d87af955fd5fe992e23","scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsc -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"9.2.0","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@material/material-color-utilities":"catalog:"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"catalog:","typescript":"catalog:","@types/node":"catalog:"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.2.5_1789022176997_0.9802443559517837","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@aphrody/m3-tokens","version":"3.3.0","author":"aphrody-code","license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.3.0","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"f71c4cef8c51a16fedeab17a9507b9461bb465c5","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.3.0.tgz","fileCount":21,"integrity":"sha512-VfOSTVPuxGrR2FHijy8XDnrg40eTc/YCeAqg0PTkQtDb/Uv2lh0SwIIGo/0ScxLH73iSy/w3gTGbeOGwWajCOw==","signatures":[{"sig":"MEYCIQCp2adClFGOI8vjo0lJ7eksWAnQkraTx6qbsCVlu5kTmwIhAOsnk4pucUFfjGJ0zHna3HSlE9WwMTqDAkd/SnqxHY4i","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDVpUGyeRCeA6QNtzpk6+tBLJeu9GrxdBFykBC37rAKmwIgNqZk3VMpyBkrgLF4pwFL4nxbh3wjLCFM9i5VxWYptjw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93649},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","shasum":"f71c4cef8c51a16fedeab17a9507b9461bb465c5","engines":{"bun":">=1.4.2"},"exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./platform-contract":{"types":"./dist/platform-contract.d.ts","default":"./dist/platform-contract.js"}},"scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsc -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"_integrity":"sha512-VfOSTVPuxGrR2FHijy8XDnrg40eTc/YCeAqg0PTkQtDb/Uv2lh0SwIIGo/0ScxLH73iSy/w3gTGbeOGwWajCOw==","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"10.8.3","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"@material/material-color-utilities":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^7.0.2","@types/node":"^25.9.6","@aphrody/m3-config":"3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.3.0_1790301821814_0.6798877052930212","host":"s3://npm-registry-packages-npm-production"}},"3.3.2":{"name":"@aphrody/m3-tokens","version":"3.3.2","author":"aphrody-code","license":"Apache-2.0","_id":"@aphrody/m3-tokens@3.3.2","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"341edbfd6b181c6cee6e33d5ef7c96d1e1a97dae","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.3.2.tgz","fileCount":21,"integrity":"sha512-FjywcHkNn/h6ANq/3j4IJsGzNJxo+sVKpwEJGQCuyJjS+n6uQrc/dXOWmf4zvjUUdv6LJGx4JwedTs+wourfUQ==","signatures":[{"sig":"MEQCIAxOe5D7QPIa+nJEiREBFfOFaOJfsJWH7ifsmu5BQZ0LAiAJfCJ4DDYUoLGI6prTfWBvKR4ydxS0SK6Dh50fbSqvyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDv42qU90iJyVfoN3z2XESS6oNlVa663z/lA3NqGCSTvQIgLrAgrzQlOOD818DnfVkSXwOvzcCTSnTsaY8e2dU5vRU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95238},"main":"./dist/theme-to-tokens.js","type":"module","types":"./dist/theme-to-tokens.d.ts","shasum":"341edbfd6b181c6cee6e33d5ef7c96d1e1a97dae","engines":{"bun":">=1.4.2"},"exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./platform-contract":{"types":"./dist/platform-contract.d.ts","default":"./dist/platform-contract.js"}},"scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsgo -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"_integrity":"sha512-FjywcHkNn/h6ANq/3j4IJsGzNJxo+sVKpwEJGQCuyJjS+n6uQrc/dXOWmf4zvjUUdv6LJGx4JwedTs+wourfUQ==","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"10.8.3","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"@material/material-color-utilities":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","@types/bun":"^1.4.2","typescript":"^7.0.2","@types/node":"^25.9.6"},"_npmOperationalInternal":{"tmp":"tmp/m3-tokens_3.3.2_1790538144607_0.11159840922640818","host":"s3://npm-registry-packages-npm-production"}},"3.3.3":{"_id":"@aphrody/m3-tokens@3.3.3","bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"dist":{"shasum":"6a171f37db3253740b06dea6afedc8b38cc78fe4","tarball":"https://registry.npmjs.org/@aphrody/m3-tokens/-/m3-tokens-3.3.3.tgz","fileCount":21,"integrity":"sha512-FTI+d9PFu72yEtxS0Fp8QsftLTO8yfvl6dQRc/aOP7hc5RCBNLRp5tyx+CxcFeCvvvvToXH4wPAnDQbDxIPapg==","signatures":[{"sig":"MEYCIQD/UvqHEEsFB6KsqzcZyaPZpjf8PVIJGOadjfNVDEOQIQIhAOB6rm6JZDscjwSCD76UCdWLRiJfO+Ef+1ueoGJyenS0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAnvIPlbnSUKiWMxA1RlFwaSZUgoznxFCEHcoh1L1R1NAiEAidhDzff/mNFodaAXLlBaxg4pqFR7vXMnsBGol8XEx8A="}],"unpackedSize":95238},"main":"./dist/theme-to-tokens.js","name":"@aphrody/m3-tokens","type":"module","types":"./dist/theme-to-tokens.d.ts","author":"aphrody-code","shasum":"6a171f37db3253740b06dea6afedc8b38cc78fe4","engines":{"bun":">=1.4.2"},"exports":{".":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./breakpoints":{"types":"./dist/breakpoints.d.ts","default":"./dist/breakpoints.js"},"./dynamic-color":{"types":"./dist/dynamic-color.d.ts","default":"./dist/dynamic-color.js"},"./m3-tokens.css":"./src/m3-tokens.css","./breakpoints.css":"./src/breakpoints.css","./theme-to-tokens":{"types":"./dist/theme-to-tokens.d.ts","default":"./dist/theme-to-tokens.js"},"./platform-contract":{"types":"./dist/platform-contract.d.ts","default":"./dist/platform-contract.js"}},"license":"Apache-2.0","scripts":{"demo":"bun run src/cli.ts","test":"bun test","build":"tsup && tsc -p tsconfig.build.json","typecheck":"tsgo -p tsconfig.json --noEmit","typecheck:fast":"tsgo -p tsconfig.json --noEmit"},"version":"3.3.3","_npmUser":{"name":"yohan971","email":"yohanpierre@live.fr"},"homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","_integrity":"sha512-FTI+d9PFu72yEtxS0Fp8QsftLTO8yfvl6dQRc/aOP7hc5RCBNLRp5tyx+CxcFeCvvvvToXH4wPAnDQbDxIPapg==","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"_npmVersion":"10.8.3","description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","directories":{},"maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"_nodeVersion":"26.3.0","dependencies":{"@material/material-color-utilities":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","@types/bun":"^1.4.2","typescript":"^7.0.2","@types/node":"^25.9.6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/m3-tokens_3.3.3_1790538461360_0.21670765742631803"}}},"time":{"created":"2026-06-03T22:53:36.781Z","modified":"2026-09-27T19:47:41.650Z","3.2.1":"2026-06-03T22:53:37.051Z","3.2.2":"2026-06-03T23:05:23.131Z","3.2.4":"2026-08-12T09:07:34.840Z","3.2.5":"2026-09-10T06:36:17.144Z","3.3.0":"2026-09-25T02:03:41.893Z","3.3.2":"2026-09-27T19:42:24.687Z","3.3.3":"2026-09-27T19:47:41.450Z"},"bugs":{"url":"https://github.com/aphrody-code/material-web/issues"},"author":"aphrody-code","license":"Apache-2.0","homepage":"https://github.com/aphrody-code/material-web/tree/main/packages/m3-tokens#readme","repository":{"url":"git+https://github.com/aphrody-code/material-web.git","type":"git","directory":"packages/m3-tokens"},"description":"Material 3 design tokens (--md-sys-*) for the @aphrody/material-web fork: MUI-theme → M3 token CSS generation and runtime Material You dynamic colour via material-color-utilities.","maintainers":[{"name":"yohan971","email":"yohanpierre@live.fr"}],"readme":"<!-- SPDX-License-Identifier: Apache-2.0 -->\r\n\r\n# @aphrody/m3-tokens\r\n\r\nMaterial Design 3 design tokens for the web, in TypeScript. Two capabilities:\r\n\r\n1. **`theme-to-tokens`** — convert a MUI (`createTheme`) theme into a block of\r\n   M3 `--md-sys-*` token CSS. The entry point of the MUI → Material 3 migration.\r\n2. **`dynamic-color`** — runtime **Material You**: derive the full set of M3\r\n   colour roles (light **and** dark) from any single seed colour, and apply them\r\n   live. Seven scheme variants, configurable contrast level. WCAG **AA** by\r\n   default, **AAA** in high-contrast mode (proven by the package's contrast test\r\n   suite, across many seeds, all variants, and both modes).\r\n\r\nBuilt on [`@material/material-color-utilities`](https://www.npmjs.com/package/@material/material-color-utilities).\r\n\r\n## Install\r\n\r\n```bash\r\nbun add @aphrody/m3-tokens\r\n```\r\n\r\n## Material You — `dynamic-color`\r\n\r\n```ts\r\nimport {\r\n  schemeFromSeed,\r\n  cssFromSeed,\r\n  applyDynamicColor,\r\n  clearDynamicColor,\r\n  type SchemeVariant,\r\n} from \"@aphrody/m3-tokens/dynamic-color\";\r\n\r\n// 1. A role map for one mode: { \"--md-sys-color-primary\": \"#…\", … } (~47 roles)\r\nconst light = schemeFromSeed(\"#00658f\");\r\nconst dark = schemeFromSeed(\"#00658f\", { dark: true });\r\n\r\n// Scheme variant (default: \"tonalSpot\" — the canonical M3/Android 12 scheme)\r\nconst expressive = schemeFromSeed(\"#00658f\", { variant: \"expressive\" });\r\nconst mono = schemeFromSeed(\"#00658f\", { variant: \"monochrome\" });\r\n\r\n// Contrast level (-1..1 ; 0 = standard / AA, 0.5 = medium, 1 = maximum / AAA)\r\nconst hc = schemeFromSeed(\"#00658f\", { contrastLevel: 1 });\r\n\r\n// All options combined\r\nconst custom = schemeFromSeed(\"#00658f\", {\r\n  dark: true,\r\n  variant: \"vibrant\",\r\n  contrastLevel: 0.5,\r\n});\r\n\r\n// 2. A full stylesheet for SSR / static theming (`:root` + `[data-theme=dark]`)\r\nconst css = cssFromSeed(\"#00658f\");\r\nconst cssMono = cssFromSeed(\"#00658f\", { variant: \"monochrome\" });\r\n\r\n// 3. Apply live in the browser (overrides :root inline on <html>)\r\napplyDynamicColor(\"#00658f\", { dark: matchMedia(\"(prefers-color-scheme: dark)\").matches });\r\napplyDynamicColor(\"#00658f\", { variant: \"expressive\", contrastLevel: 1 });\r\nclearDynamicColor(); // revert to the stylesheet baseline\r\n```\r\n\r\nBecause `@aphrody/material-web` only emits `--md-sys-color-*` at runtime, setting those\r\nroles re-themes **every** `<md-*>` element (and every `@aphrody/m3-react`\r\nwrapper) with no rebuild — the signature Material 3 capability.\r\n\r\n### Scheme variants\r\n\r\n| `variant`    | Character                                                                           |\r\n| ------------ | ----------------------------------------------------------------------------------- |\r\n| `tonalSpot`  | **Default** — canonical M3 (Android 12+): low–medium chroma, complementary tertiary |\r\n| `content`    | Source colour in `primaryContainer`, high fidelity to the input colour              |\r\n| `fidelity`   | Like `content` but tertiary from temperature complement                             |\r\n| `expressive` | Intentionally detached from source — bold, diverse, expressive palette              |\r\n| `vibrant`    | Maximum chroma at every tonal position                                              |\r\n| `neutral`    | Near-greyscale, very low chroma                                                     |\r\n| `monochrome` | Pure greyscale — zero chroma                                                        |\r\n\r\n### Contrast levels\r\n\r\n| `contrastLevel` | Effect                                     |\r\n| --------------- | ------------------------------------------ |\r\n| `-1`            | Reduced contrast (below M3 standard)       |\r\n| `0`             | **Default** — M3 standard (WCAG AA, 4.5:1) |\r\n| `0.5`           | Medium contrast                            |\r\n| `1`             | Maximum contrast (WCAG AAA, 7:1)           |\r\n\r\n> **Legacy alias**: `contrast` is still accepted for backwards compatibility.\r\n> When both `contrast` and `contrastLevel` are provided, `contrastLevel` takes\r\n> precedence.\r\n\r\n### API\r\n\r\n```ts\r\n// Types\r\ntype SchemeVariant =\r\n  | \"tonalSpot\"\r\n  | \"content\"\r\n  | \"fidelity\"\r\n  | \"expressive\"\r\n  | \"vibrant\"\r\n  | \"neutral\"\r\n  | \"monochrome\";\r\n\r\ninterface SchemeOptions {\r\n  dark?: boolean; // default false\r\n  variant?: SchemeVariant; // default \"tonalSpot\"\r\n  contrastLevel?: number; // default 0  (-1..1)\r\n  contrast?: number; // @deprecated alias for contrastLevel\r\n}\r\n\r\ninterface ApplyOptions extends SchemeOptions {\r\n  target?: HTMLElement | null; // default document.documentElement\r\n}\r\n\r\n// Functions\r\nfunction schemeFromSeed(hex: string, opts?: SchemeOptions): Record<string, string>;\r\nfunction cssFromSeed(hex: string, opts?: SchemeOptions): string;\r\nfunction applyDynamicColor(hex: string, opts?: ApplyOptions): void;\r\nfunction clearDynamicColor(target?: HTMLElement | null): void;\r\n\r\n// Constants\r\nconst ROLES: readonly string[]; // ~47 camelCase role names\r\n```\r\n\r\n## MUI → M3 — `theme-to-tokens`\r\n\r\n```ts\r\nimport { muiThemeToTokens } from \"@aphrody/m3-tokens/theme-to-tokens\";\r\n\r\nconst { css, lightRoles, darkRoles, typescale, shape } = await muiThemeToTokens(muiTheme, {\r\n  darkTheme: muiDarkTheme,\r\n});\r\n```\r\n\r\nMaps the MUI palette (and honours explicit `primary.main` / `contrastText`),\r\nderives the M3 roles MUI lacks (tertiary, `*-container`, surface-variant,\r\noutline, inverse-\\*), and maps typography variants and `shape.borderRadius` to\r\nthe M3 typescale and corner family.\r\n\r\nCLI (bun):\r\n\r\n```bash\r\nbun run demo            # from a realistic MUI theme\r\nbun run demo '#6750A4'  # from a Material You seed colour\r\n```\r\n\r\n## Runtime token asset\r\n\r\n`@aphrody/m3-tokens/m3-tokens.css` declares the M3 token families\r\n`@aphrody/material-web` does **not** project as runtime variables (typescale, shape,\r\nelevation, motion, state) on `:root` — useful for Tailwind `@theme` consumption.\r\n\r\n## Toolchain\r\n\r\nbun-only. Ships ESM `dist/` (`.js` + `.d.ts`) built with tsup + `tsc`.\r\n","readmeFilename":"README.md"}