This is a node.js web application that creates shields ( https://github.com/olivierlacan/shields ) to solve this issue: https://github.com/olivierlacan/shields/issues/15?source=c .
It uses the shielded library ( https://github.com/cainus/shielded ).
It runs on heroku out-of-the-box, but can easily run elsewhere.
See also the golang version by @jbowes : https://github.com/jbowes/buckler . It probably vastly outperforms this library.