I have built this perfectly scoring voting website for the Dutch National Youth Council, which allows you to cast votes for multiple candidates. I made the voting very accessible by omitting SMS verification. Ofcourse that required some (extra) measurements to detect invalid votes. How that works? That is a secret.