Our team have devoloped a system were you combine the transperency and anonymity in a voting system full on chain. In other systems you depend on out blockchain techology. However we decided to use ZK in our a voting system which have to options, the first one a normal voting system and the other one a quadratic voting system.
Our system allows you to create a vote without anyone knowing what you voted, giving you more privacy than the conventional voting system.
The biggest problems we have encountered during development have been related to zero-knowledge circuits, as we could not get the process verified. In order to solve this we needed help from members of the Polygon team and with the use of documentation.