I just finished checking out a guide on how to build a private voting app using Midnight Network. It is a full tutorial that shows you how to go from zero to a working dApp. I saw that it covers everything from the basic setup to the smart contracts and even how to test it on the chain. I think it is a really good way to see how this tech actually works in real life.
The part I noticed first is the focus on privacy. Usually when you vote on a blockchain everyone can see your wallet address and what you chose. But here they use zero knowledge proofs to keep everything hidden.
I also saw that they use nullifiers. These are pretty clever because they stop someone from voting 2 times but they still do not reveal who the person is. It is like a silent ballot where the result is public but the voters stay ghosts.
To get this running you need Node 22 and Docker for the proof server. The smart contract is written in a language called Compact which is a bit different from the usual Solidity we see.
You deploy it on the Midnight Preprod testnet and I saw that you need some $NIGHT tokens from a faucet to pay for the gas.
Once it is live the creator can add voters and then people can cast their YES or NO votes using a CLI tool. It feels like a very practical way to use a privacy chain instead of just talking about it.
I honestly believe this is a big step for the network. When you see a full working app like this it makes the project feel much more real. I think these kinds of private dApps will be huge for things like company decisions or community polls where people do not want to be judged for their choices.
It might be on a testnet now but I can see this being used in the real world very soon.
What do you think? Would you trust a system where your vote is completely hidden but still counted?