Connect a PlayStation DS4 to your device and click on 'Connect' to interact with the virtual controller.
If you don't have a DS4 or would just like to see it in operation check out this video.

Requires a browser with WebHID support.
USB only recommended for now due to poor performance and feature limitations on Bluetooth.

Implemented in Vanilla JS with zero dependencies based on original work here.
Controller image courtesy of Wikimedia Commons.
Check out the code at glitch.com.

Light Bar
Light Rumble
Heavy Rumble