4.7 Example Studies
The "congame-example-study" directory contains a collection of example studies that demonstrate the features of Congame and Conscript. Each link below points to the source code on GitHub.
4.7.1 Getting Started
congame-example-study/conscript.rkt —
A basic Conscript study with simple steps and a consent page. congame-example-study/conscript-how-tos.rkt —
Common tasks: creating links, displaying monetary amounts, and navigating between steps with buttons.
4.7.2 Forms & Input
congame-example-study/conscript-easy-forms/study.rkt —
Comprehensive forms tutorial covering checkboxes, tables, LaTeX/MathJax, timers, sliders, dice rolls, image selection, and dropdowns. congame-example-study/conscript-forms-lib.rkt —
Using the forms library with checkboxes, radios, and selects. congame-example-study/conscript-radio-table.rkt —
Radio buttons arranged in a custom table layout. congame-example-study/conscript-radio-shuffle-and-style.rkt —
Shuffling and styling radio button options. congame-example-study/conscript-range-formlet.rkt —
Range and scale form fields with static and dynamic definitions. congame-example-study/conscript-multi-input-validation.rkt —
Multi-field form validation with constraints such as requiring inputs to sum to 100.
4.7.3 Randomization & Dynamic Studies
congame-example-study/conscript-step-randomizer.rkt —
Randomly assigning participants to treatment or control conditions. congame-example-study/conscript-shuffle.rkt —
Dynamically shuffling the order of steps. congame-example-study/conscript-for-study.rkt —
Generating studies dynamically with for/study. congame-example-study/conscript-defstudy-dynamic-study.rkt —
Dynamic study creation with for/study and make-step/study. congame-example-study/conscript-choice-that-counts.rkt —
Randomly selecting one task for payment, with slider inputs and scoring.
4.7.4 Multi-Participant Studies
congame-example-study/prisoners-dilemma.rkt —
A full prisoner’s dilemma with matchmaking, bots, admin pages, and repeated rounds. congame-example-study/prisoners-dilemma-redux.rkt —
A simplified prisoner’s dilemma. congame-example-study/dictator-game.rkt —
A dictator game with matchmaking and role assignment. congame-example-study/conscript-multi-example.rkt —
A multi-participant study with balanced randomization and competitive payments. congame-example-study/conscript-three-plus-participants.rkt —
Groups of three or more participants with role assignment. congame-example-study/proposal-choice.rkt —
A four-person game with three proposers and one responder.
4.7.5 Data Sharing & Variables
congame-example-study/conscript-defvar.rkt —
Sharing global variables across modules using defvar*. congame-example-study/conscript-defvar-consent.rkt —
Reusing global variables in a separate consent module (companion to conscript-defvar.rkt). congame-example-study/conscript-communication.rkt —
Parent-child study communication with namespaced variables. congame-example-study/conscript-data-sharing.rkt —
Passing data between parent and nested studies.
4.7.6 Styling & Media
congame-example-study/conscript-css.rkt —
Adding inline CSS to a study. congame-example-study/conscript-css-resource.rkt —
Loading external CSS files as resources. congame-example-study/conscript-images.rkt —
Loading and displaying images in a study. congame-example-study/zip-study-example/study.rkt —
Loading images using resource URIs.
4.7.7 Admin, Bots & Other Features
congame-example-study/conscript-bot.rkt —
Bot autofill with form0 and bot model definitions. congame-example-study/conscript-with-admin.rkt —
Creating studies with admin pages. congame-example-study/conscript-push-notification.rkt —
Sending push notifications to participants. congame-example-study/conscript-archetype1.rkt —
Treatment randomization with comprehension checks and multiple-choice questions. congame-example-study/phd-seminar.rkt —
A longitudinal survey with multiple phases and file uploads. congame-example-study/many-designs/ach91.rkt —
Design notes for a behavioral economics experiment on self-reported performance and competition (comments only, no runnable code).
4.7.8 Legacy Examples
These examples use #lang racket/base with the older Congame API rather than Conscript.
congame-example-study/example.rkt —
Core study features: forms, nested studies, and wrappers. congame-example-study/looping.rkt —
Looping and repeated substudies with round counters. congame-example-study/deferred.rkt —
Deferred study creation and study wrapping. congame-example-study/matchmaking.rkt —
Manual matchmaking with group assignment and lobbies. congame-example-study/quizzes.rkt —
A quiz system with admin grading. congame-example-study/instructor-review.rkt —
Submission and grading with file uploads and PDF annotations. congame-example-study/multi-review.rkt —
Peer review with submission and review phases. congame-example-study/edpb-survey.rkt —
A behavioral economics survey with subjective beliefs and phased answer release. congame-example-study/calibration.rkt —
An interactive calibration form for indifference-point elicitation. congame-example-study/inline.rkt —
Inline form handling with matrix tables and dynamic field rendering. congame-example-study/prolific-redirect.rkt —
Redirecting participants to Prolific on study completion.