So I came up with the following idea to make email validation a bit less painful for the end user:
* Send out a validation email. Display a message that tells them to open the email in another window/their phone in a modal that blocks the rest of the page
* Send out an email with a tracking pixel that detects when it has been opened.
* When the user opens the email, the modal window will see that it has been opened, say thanks and slide away.
Obviously it is easier to just include a link (and you should as a fallback) but I thought this might be a neater solution for applications where maybe the user has been using a trial and they don't want to loose their progress. I have a prototype up at:
https://github.com/andyhmltn/email-registration