To avoid the problem of holding elections with only candidates of one party, you can:
* Use ranked voting to determine the candidate fielded by each party and then pit the party winners against each other in another ranked race.
* Require that races include at least 2 parties or 1 party candidate and 1 independent candidate.
* Lower or remove minimum requirements (e.g. number of signatures on a supporting petition) for minority parties. If the dominant party needs 1000 signatures to put a candidate on the ballot, a minority party might need only 500 and an independent might need none.
* Make the dominant party fund its own campaigns but set aside funding for minority or independent campaigns
Require everyone to use only the allotted public funds for campaigning and divide those equally among all candidates.