PageSourceSearch

https://researchstack.org/

html researchstack.org collected 2026-09-25 22:49:58 UTC 11,960 bytes, 206 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-us">
3  <head>
4    <meta charset="UTF-8">
5    <title>ResearchStack</title>
6    <meta name="viewport" content="width=device-width, initial-scale=1">
7    <link rel="stylesheet" type="text/css" href="stylesheets/normalize.css" media="screen">
8    <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'>
9    <link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
10    <link rel="stylesheet" type="text/css" href="stylesheets/github-light.css" media="screen">
11    
11<script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>
11
12  </head>
13  <body>
14    <section class="page-header">
15      <img src="images/ResearchStack-logo.png" alt="ResearchStack logo" height="150" width="150">
16      <h1 class="project-name">ResearchStack</h1>
17      <h2 class="project-tagline">An SDK for building research study apps on Android</h2>
18      <a href="https://github.com/ResearchStack/ResearchStack" class="btn">Source Code (GitHub)</a>
19      <a href="#documentation" class="btn">Documentation</a>
20      <a href="https://groups.google.com/forum/#!forum/researchstack" class="btn">Announcements & Forum</a>
21      <!-- <a href="https://twitter.com/researchstack" class="btn">Twitter</a> -->
22      <a id="click_here" onclick="revealForm()" class='btn clicker successful-signup'>Contact Us</a>
23    </section>
24
25    <section id="signup-section" class="signup-section">
26      <!-- <h2 class="signup-tagline successful-signup">Want to join the Beta Preview?</h2> -->
27      <h2 class="signup-tagline hidden success_message">
28        Thank you for your interest in ResearchStack!<br>Someone from the team will reach out to you soon.
29      </h2>
30      <form id="registration_form" action="http://formspree.io/[email protected]" method="POST" class="hidden successful-signup">
31        <input id="name" type="text" name="name" placeholder="name (required)" class="signup-field" required>
32        </br>
33        <input id="email" type="email" name="_replyto" placeholder="email (required)" class="signup-field" required>
34        </br>
35        <textarea id="message" type="text" name="message" placeholder="Tell us a bit about your project/interest!" class="signup-field" rows="5"></textarea>
36        </br>
37        <input type="hidden" name="_subject" value="ResearchStack information request" />
38        <input type="hidden" name="_next" value="/#successful-signup" />
39        <input id="register" type="submit" value="Submit" class="btn successful-signup">
40      </form>
41      <h1 id="success_message" class="signup-tagline hidden">
42    </section>
43
44    <section class="main-content">
45      <h3>
46<a id="what-is-researchstack" class="anchor" href="#what-is-researchstack" aria-hidden="true"><span class="octicon octicon-link"></span></a>What is ResearchStack?</h3>
47
48  <p>
49    ResearchStack is an SDK and UX framework for building research study apps on Android.
50  </p>
51
52  <p>
53    It is designed from the ground up to meet the requirements of most scientific research, including capturing participant consent, extensible input tasks, and the security and privacy needs necessary for IRB approval.
54  </p>
55
56<h3>
57  <a id="is-it-similar-to-ios-researchkittm" class="anchor" href="#is-it-similar-to-ios-researchkittm" aria-hidden="true"><span class="octicon octicon-link"></span></a>Is it similar to Apple's ResearchKit(TM)?
58</h3>
59
60  <p>
61    Yes, an overarching goal of ResearchStack is to help developers and researchers with existing apps on iOS more easily adapt those apps for Android.
62  </p>
63
64  <p>
65    Though the correspondence of features between the two SDKs isn’t one-to-one, the two SDKs will offer enough shared functionality and a common framework and naming scheme to greatly speed up adaptation of ResearchKit apps to Android (and ResearchStack apps to iOS) and the procedural aspects of running a study on a new platform (such as IRB approval and secure connectivity with a data collection backend).
66  </p>
67
68<h3>
69  <a id="researchstack-1-0-release" class="anchor" href="#researchstack-1-0-release" aria-hidden="true"><span class="octicon octicon-link"></span></a>What features are available?
70</h3>
71
72  <p>
73    Researchers and developers can leverage ResearchStack to build a basic Android app without having extensive knowledge of the Android platform. Using JSON and HTML files, a simple app can be built that will include the onboarding flow (Study Overview/Consent/Sign Up) and an Activities screen with scheduled tasks for the user. Researchers will also be able to reuse existing ResearchKit AppCore resources, <a href="https://github.com/ResearchStack/ResearchStack#things-to-look-out-for-when-converting-your-researchkit-app">with some minor changes</a>.
74  </p>
75
76  <p>
77    Included graphing libraries facilitate data visualization. ResearchStack also has tools to allow easy on-disk encryption and strives to be extensible so that researchers can implement or modify screens they need.
78  </p>
79
80<h3>
81  
82  <a id="how-to-port" class="anchor" href="#how-to-port" aria-hidden="true"><span class="octicon octicon-link"></span></a>I have an existing ResearchKit app, how do I port it to ResearchStack?
83</h3>
84
85  <p>
86    Not all ResearchKit apps were made equal but, if your ResearchKit app was built using the 'AppCore' JSON schemas and other assets, you can adapt those over to work in ResearchStack with minimal effort. Along those lines, the <a href="https://github.com/ResearchStack/SampleApp">SampleApp</a> is an excellent, lightweight implementation of AppCore assets into ResearchStack to reference.
87  </p>
88
89  <p>
90    We are also currently working to develop tutorials on adapting ResearchKit apps to ResearchStack but, in the meantime, probably the best reference is to look at actual implementations of ResearchKit apps to ResearchStack. The open source <a href="https://github.com/Sage-Bionetworks/MoleMapper">iOS</a> and <a href="https://github.com/ResearchStack/MoleMapperAndroid">Android</a> repositories for <a href='https://www.ohsu.edu/xd/health/services/dermatology/war-on-melanoma/mole-mapper.cfm'> OHSU's MoleMapper</a> are good examples to start with (particularly if your app uses Sage Bridge for a backend).
91  </p>
92
93  <p>
94    If your ResearchKit app was <i>not</i> built using the features of AppCore, the road ahead involves a bit more work but should still be familiar to you, since the naming schema and APIs of ResearchStack are deliberately similar to those of ResearchKit. A good place to look is the <a href="https://github.com/ResearchStack/BackboneExampleApp">Backbone ExampleApp</a>, which sticks a bit closer to the "metal" of the ResearchStack framework.
95  </p>
96
97  <ul>
98    <li>
99      <a href="https://github.com/ResearchStack/SampleApp">
100        SampleApp (ResearchStack)
101      </a>
102    </li>
103    <li>
104      <a href="https://github.com/Sage-Bionetworks/MoleMapper">
105        MoleMapper ResearchKit source code (iOS)
106      </a>
107    </li>
108    <li>
109      <a href="https://github.com/ResearchStack/MoleMapperAndroid">
110        MoleMapper ResearchStack source code (Android)
111      </a>
112    </li>
113    <li>
114      <a href="https://github.com/ResearchStack/BackboneExampleApp">
115        Backbone ExampleApp (ResearchStack)
116      </a>
117    </li>
118  </ul>
119
120<h3>
121  <a id="documentation" class="anchor" href="#documentation" aria-hidden="true"><span class="octicon octicon-link"></span></a>Where's the documentation?
122</h3>
123
124  <p>
125    ResearchStack has two primary modules. Backbone contains the core ResearchStack functionality and is designed to follow the APIs laid out in Apple's ResearchKit core as closely as possible. Skin is an application framework that implements the functionality of ResearchKit's AppCore. Links to the Javadocs for both Backbone and Skin are below; be aware that the documentation is itself a work in progress. Please post any issues on the ResearchStack <a href="https://github.com/ResearchStack/ResearchStack">GitHub</a>.
126  </p>
127
128  <ul>
129    <li>
130      <a href="documentation/backbone">Backbone Documentation</a>
131    </li>
132    <li>
133      <a href="documentation/skin">Skin Documentation</a>
134    </li>
135  </ul>
136
137<h3>
138  <a id="packages" class="anchor" href="#packages" aria-hidden="true"><span class="octicon octicon-link"></span></a>Are there extensions or packages available?
139</h3>
140
141  <p>
142    The ResearchStack community is still nascent, but a number of extensions -- including ActiveTasks -- are currently in the works. We'll be publishing a list of them here, as they become available.
143  </p>
144
145  <p>
146  </p>
147
148<h3>
149  <a id="who-is-backing-this-project" class="anchor" href="#who-is-backing-this-project" aria-hidden="true"><span class="octicon octicon-link"></span></a>Who is backing this project?
150</h3>
151
152  <p>
153    ResearchStack is maintained by <a href="https://tech.cornell.edu/">Cornell Tech</a>'s <a href="http://smalldata.io/">Small Data Lab</a> and <a href="http://www.openmhealth.org/">Open mHealth</a>. The current project maintainers are <a href="http://destrin.smalldata.io">Deborah Estrin</a>, <a href="http://michael.carroll.io">Michael Carroll</a> and <a href="https://github.com/nrlakin">Neil Lakin</a>.
154  </p>
155
156  <p>
157    A special debt of gratitude is also owed to <a href="http://www.rwjf.org/">Robert Wood Johnson Foundation</a>, which provided initial funding for the project, and to <a href="http://www.ohsu.edu/xd/education/schools/school-of-medicine/departments/clinical-departments/dermatology-research/">OHSU</a>, <a href="http://sagebase.org/">Sage Bionetworks</a>, <a href="http://www.touchlab.co">touchlab</a>, <a href="https://twitter.com/Dan_E_Webster">Dan Webster</a>, and all of <a href="https://github.com/ResearchStack/ResearchStack/graphs/contributors">our volunteer contributors</a> for their involvement in getting the initial platform and MoleMapper Android off the ground.
158  </p>
159
160<h3>
161  <a id="contributing" class="anchor" href="#contributing" aria-hidden="true"><span class="octicon octicon-link"></span></a>How can I contribute?
162</h3>
163
164  <p>
165    We ❤︎ contributors! Please check out our <a href="https://github.com/ResearchStack/ResearchStack/blob/master/CONTRIBUTORS">CONTRIBUTORS file</a> for details on how to submit a pull request to ResearchStack.
166  </p>
167
168<h3>
169  <a id="questions" class="anchor" href="#questions" aria-hidden="true"><span class="octicon octicon-link"></span></a>Questions?
170</h3>
171
172  <p>
173    For further questions, please join <a href="https://groups.google.com/forum/#!forum/researchstack">the ResearchStack forum</a> or contact <a href="mailto:[email protected]">the ResearchStack team</a>.
174  </p>
175
176      <footer class="site-footer">
177        <span class="site-footer-credits">This page is a modification of the <a href="https://pages.github.com">GitHub Pages</a> <a href="https://github.com/jasonlong/cayman-theme">Cayman theme</a> by <a href="https://twitter.com/jasonlong">Jason Long</a>.</span>
178      </footer>
179
180    </section>
181          
181<script type="text/javascript">
182            $(document).ready(function () {
183                if(window.location.href.indexOf("successful-signup") > -1) {
184                  $('#registration_form').hide();
185                  $('.success_message').show();
186                }
187            });
188
189            function revealForm () {
190                                    $('#registration_form').show();
191                                   };
192          </script>
192
193
194          
194<script type="text/javascript">
195            var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
196            document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
197          </script>
197
198          
198<script type="text/javascript">
199            try {
200              var pageTracker = _gat._getTracker("UA-73169424-1");
201            pageTracker._trackPageview();
202            } catch(err) {}
203          </script>
203
204
205  </body>
206</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.