Question types + scoring strategies + result ranges live in the database. Adding a new assessment is a content change, not a release.
Why ClearedMind treats clinical assessments as MongoDB documents instead of bespoke React forms.
The fastest way to ship an assessment is to hand-code its screens. The fastest way to ship ten is to copy-paste the first one nine times. The fastest way to ship a hundred is to never ship them at all.
In ClearedMind, an Assessment is a document with:
questions[] — embedded array, each with type (multiple_choice, scale, text, boolean) and per-option score weights.scoring_type — one of sum, average, weighted.result_ranges[] — each with starting_mark, ending_mark, and a personalised recommendation.The mobile client renders any assessment generically. The backend scoring engine handles any scoring_type generically. Adding a new clinical instrument means inserting a document — no code, no release.
You give up bespoke per-assessment UX. For most clinical instruments, that's a feature, not a bug — uniformity is part of the validity.