devhci / research.package

A Flutter package implementing support for surveys like ResearchStack and ResearchKit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Research Package

This is a Flutter package implementing support for surveys like ResearchStack and ResearchKit.

Current stage

The main focus at the moment is to make Research Package capable of handling a WHO5 survey.

Currently the focus is on creating a consent flow with the Dart model and Flutter UI widgets.

Also, we are designing and implementing the domain model for ResearchPackage. The package tries to follow the ResearchStack and ResearchKit patterns and namings.

The main modules of the above mentioned libraries are:

Useful Links

Challenges

ResearchStack and ResearchKit are built on native iOS and Android which have totally different architecture than the Widget-based Flutter. It hopefully doesn't affect the domain model but for wiring up the model to the UI, we should definitely implement a different approach from ResearchKit and Stack.

Naming

We are following Apple's pattern when it comes to naming. There's a prefix ORK (Open Research Kit) before the names of classes, types etc. in ResearchKit, so our names are starting with the RP prefix which stands for Research Package.

For UI widgets we are using the RPUI (Research Package UI) prefix.

Getting Started

In order to use Research Package, you have to clone this repo and add it manually to your pubspec.yaml file

  research_package:
    path: *PATH*/research.package

After you run the flutter packages get command you are able to import and start using Research Package. With the following line you have access both to the Model and the UI part of the package.

import 'package:research_package/model.dart';
import 'package:research_package/ui.dart';

Remember, that objects starting with RP are part of the Model (like RPConsentDocument) while those which start with RPUI are part of the UI library (like RPUIVisualConsentStep).

About

A Flutter package implementing support for surveys like ResearchStack and ResearchKit

License:MIT License


Languages

Language:Dart 98.9%Language:Java 0.6%Language:Objective-C 0.5%