Skip to content

study-setupDocumentation

Product requirements, user documentation, and development guides.

Product Requirements

Functional scope of Study Setup — modules, domain events, and cross-artifact verification.

Concepts

Modules

  • Studies — Registration, lifecycle, checkpoints, changesets, and readiness.
  • Templates — Master document templates for artifact generation.
  • Document Review — Internal and external review, versioning, and release.
  • Provisioning — Release of approved configuration to downstream systems.
  • Master Data — Materials, sites, codelists, and sponsors.
  • Audit Trail — Immutable audit trail of significant actions.
  • Notifications — In-app alerts for actionable events.
  • Search — Global cross-entity search.
  • Access Control — Authentication, RBAC, and external reviewer access.
  • Source Ingestion — Upload and extraction of source documents.
  • Reporting — Readiness, verification, milestone, and audit reports.

User Manual

End-user documentation for the application.

Development Guide

Architecture, deep dives, and vendored backend libraries for contributors.

Overview

  • Architecture — Layout, local runtime, data model, and background tasks.

Deep dives

  • Frontend — React 19, Vite, TanStack Router/Query, auth, and data fetching.
  • Backend — Django + Ninja API, Allauth headless auth, Celery, and storage.
  • Docs — How this VitePress site is built, configured, and run.
  • Build & CI/CD — GitLab pipeline, Helm charts, and how to test the whole thing locally.

Libraries

Vendored packages under backend/lib/, documented from their READMEs.

  • eventcore — Formal Commands and Events for Django apps — validated intentions, typed events, and subscriber hooks.
  • tracker — Progress tracking for Celery workloads — stamped task groups and a Django Ninja API.
  • uncouple — Typed configuration from environment variables with nesting, prefixes, and secure defaults.