Not sure if Tierney is the true root, but it's where I saw it first.
Just follow that thread, there are so many others tacking on with updates, modifications, etc.
Fortunately a friend of mine took the
npm shawn package years back.
So, for me it's: