Skip to content
CARP Docs
Ask AISystemLightDark
On this page

Terminology

Definitions of the tools, CARP components and study terms used throughout the CARP documentation.

Copy MarkdownOpen inOpen in GitHubView as MarkdownOpen in Scira AIOpen in ChatGPTOpen in ClaudeOpen in Cursor

These terms are used throughout the CARP documentation and APIs.

Tooling

TermDefinition
FlutterGoogle's free framework for building mobile apps. One codebase runs on both iOS and Android. CARP apps are Flutter apps.
DartThe programming language Flutter apps are written in.
PackageA reusable library that you add to your app as a dependency, for example one that counts steps. Flutter packages are published on pub.dev.
pubspec.yamlThe file in every Flutter app that lists the packages the app depends on. Add a dependency and run flutter pub get to download it.

CARP components

TermDefinition
carp_coreThe platform-independent CARP domain model.
CAMS (CARP Mobile Sensing)The main CARP package, carp_mobile_sensing. The runtime inside your app that runs studies and collects the data.
Sampling packageA CARP package that adds a new kind of data to CAMS. CAMS collects steps, screen and battery data out of the box. carp_context_package adds location and weather; carp_polar_package adds support for Polar heart rate straps.
CAWS (CARP Web Services)CARP's own server, where researchers set up studies, invite participants and receive the data.
CARP web portalThe web portal where researchers create studies on CAWS, invite participants and download data.

Study terms

A protocol combines measures and triggers. The app executes the protocol and produces measurements, and the data endpoint decides where they go.

TermDefinitionExampleIn code
Study protocolWhat to collect, from which device, and when.Steps and screen events, all daySmartphoneStudyProtocol
MeasureOne type of data to collect.StepsMeasure(type: SensorSamplingPackage.STEP_EVENT)
TriggerWhen to collect.Immediately, every hour, every morning at 8:00ImmediateTrigger()
TaskA group of measures that start together.Background sensing, a morning surveyBackgroundTask(measures: [...])
DeviceA source of data. The phone is added to a protocol as the primary device.The phone, a smartwatchSmartphone()
DeploymentOne participant's instance of the protocol, running on their phone.Anna's study on Anna's phoneIdentified by study.studyDeploymentId
MeasurementOne piece of collected data, with a timestamp.12 steps at 09:14Emitted on client.measurements
Data endpointWhere measurements are saved or sent.On the phone, CAWS, your own serverSQLiteDataEndPoint(), FileDataEndPoint(), CarpDataEndPoint

To see these terms in working code, build the Quickstart app. For the complete model of protocols, devices, triggers, tasks and measures, see Domain model.

Quick links

Page · DocumentationCARP DocumentationPage · DocumentationIntroductionPage · DocumentationQuickstartPage · DocumentationTerminologyPage · DocumentationArchitecture