It's using JSDom to initialize an empty document on startup because it's required by jQuery on the server-side. Bloodhood is only using jQuery utility functions, so it's not touching the window object from JSDom.

To remove the dependency on JSDom and jQuery, I could create a shim which has only the utility functions required by Bloodhound.