A polyfill for the CSS Paint API, with special browser optimizations.
Clone or download
Latest commit 93ea953 Jul 13, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
demo Github Pages publish process May 21, 2018
src Improve fallback style mutation tracking. Jul 13, 2018
.gitignore Initial release! May 18, 2018
CONTRIBUTING.md Initial release! May 18, 2018
LICENSE Initial release! May 18, 2018
README.md Add demo gif May 23, 2018
package.json 1.0.2 Jul 13, 2018



Houdini's CSS Paint Polyfill npm

This is a polyfill for the CSS Paint API.

Performance is quite good in Firefox and Safari courtesy of -webkit-canvas() and -moz-element(). For the remaining browsers, framerate is governed by Canvas toDataURL() / toBlob() speed.

CSS Paint Polyfill demo


<script src="css-paint-polyfill.js"></script>
<!-- or: -->
<script src="https://unpkg.com/css-paint-polyfill/dist/css-paint-polyfill.js"></script>

Or with a bundler:

import 'css-paint-polyfill';

... or with ES Modules on the web:



  • Add second options argument to addModule() (spec)
  • Extract addModule() into its own repo (spec)