Study Tracker makes the job of managing your team's research easier by providing a user-friendly web application that serves as a single source-of-truth for your organization. Save time by connecting with other required platforms, such as electronic laboratory notebooks (ELNs), data file storage systems, and team messaging services. Integrate Study Tracker with other platforms via an integrated REST API and event dispatcher service for sharing of data.
Looking for a fully-managed Study Tracker? Take a look at Lab Atlas.
- JDK 17+
- Maven 3+
- PostgreSQL 12+
- OpenSearch 2+ (optional)
NodeJS and NPM are not required for building and running the project, as the
frontend-maven-plugin installs them at build time, in order to properly compile the front-end of
the application.
Starting in v1.0, Study Tracker now requires Java 17 and now supports OpenSearch in place of ElasticSearch. Some older initialization scripts have also been removed, so if you are coming from earlier than v0.9.0, you will first want to upgrade to v0.9.11 and then to v1.0+.
For instructions about how to configure deploy Study Tracker, see Gitbook.
- Benchling
- Microsoft SharePoint & OneDrive
- Egnyte
- Amazon S3
- Local filesystem
- AWS EventBridge
- Okta
- Microsoft Entra ID (Azure AD)
- GitLab
For a rapid build and deployment in development mode, follow the steps below. For production deployment, see the wiki.
-
Make sure you have all requirements installed.
-
Create a new PostgreSQL database.
-
Create a new file,
web/src/main/resources/application.properties. Use theapplication.properties.examplefile as a template for filling out the required parameters for running the application. -
Create a new file,
web/flyway.conf, using theflyway.conf.examplefile as a template. Fill in your database's username, password, and connection URL. -
Build the application with the included Maven wrapper:
./mvnw clean package -DskipTests
-
Run the Flyway plugin to import the Study Tracker database schema and default data:
./mvnw -Dflyway.configFiles=web/flyway.conf flyway:clean flyway:migrate
-
You can run the application with Maven from the
webdirectory:./mvnw spring-boot:run
Or, you can execute the packaged WAR file directly:
java -jar web/target/study-tracker.war
An official Study Tracker Docker image is available from the GitHub Container Registry. You can build the image locally from source by running the following command from the root of the project:
docker buildx build --platform linux/amd64 -t study-tracker .An example docker-compose.yml file is available in the root of the project, which you can use
for quickly spinning up a local instance of Study Tracker with PostgreSQL.
-
Create a folder name
.docker. -
Create two folders inside
.dockernamedconfiganddata. -
Create a file named
application.propertiesinside the.docker/configfolder, and copy the following contents into it:server.port=8080 application.host-name=localhost application.secret=studytrackerstudytracker admin.email=your-email@domain.com admin.password=password storage.temp-dir=/tmp storage.local-dir=/data
-
Run the following command from the root of the project to start the application:
docker compose -f docker-compose.yml up
-
You can now access Study Tracker at
http://localhost:8080and log in with the email and password defined in theapplication.propertiesfile.
For questions about Study Tracker, or if you would like to contribute, please contact:
For support or feature requests:
Copyright 2019-2025 the original authors
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.