Virtual funding as a leaf and as a hub are both implemented in the browser wallet! They are also used in web3torrent, whose source can be found here. I believe web3torrent still works, but I don’t have any Goerli eth handy to test it out.
Behind the scenes, there’s a “simple hub” that optimistically signs state updates, which enables the virtual funding flow. Thus, the hub is trusting the “leaves” not to operate out of protocol, meaning it would easily give away some (Goerli) eth if you sent it some manually crafted state updates!
Note that web3torrent & the simple hub are using some older versions of some packages.
We have a working nodejs server wallet, but unfortunately it is not yet interoperable with the browser wallet. We are currently finalizing some research, before implementing an optimized protocol!