Hi, guys, and thanks for all of your work on this.
One suggestion -- you should add one note to the Wiki: Although the "preshared key" is optional, if a preshared key isn't used, the entire line must be deleted. If the line is present, but no key is supplied, the Wireguard instance will fail.
I wasted several hours before I figured this out, and I know others have as well.