quizpool project administers quizzes, and collects results and statistics over the Web.
The quizzes can be selected from pools of questions, written in "Question Definition Language", according to rules written in "Quiz Definition Language".
When a user starts a session, they are presented with a menu of quizzes available. A quiz can then be selected and completed.
If the user has not taken that quiz before, the number of chances they are given to take that quiz is randomly generated from the quiz pools for that quiz.
This provides an even (or changing) mix of difficult, medium, and easy questions through the various attempts.
All output is created from editable HTML template files, which are separate from the program code. This was developed under Apache and Boa.