MainRouter and ParticipateView contain a bunch of procedural logic that could probably be simplified by employing finite state machines (FSMs). An obvious choice for the construction of FSMs would be http://machina-js.org.
I'm removing the "least concern" label, as dfe2c73 has made apparent that this project really needs better state management. If there is any spare development time, I should really take up on this.
MainRouter and ParticipateView contain a bunch of procedural logic that could probably be simplified by employing finite state machines (FSMs). An obvious choice for the construction of FSMs would be http://machina-js.org.