Skip to content

Commit

Permalink
Update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
mattkorb committed Oct 29, 2024
1 parent b13160f commit e6ba6cd
Show file tree
Hide file tree
Showing 5 changed files with 86 additions and 80 deletions.
28 changes: 23 additions & 5 deletions README.html
Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,30 @@

<section id="dynamic-visualization-for-clinical-insights-davinci" class="level1">
<h1>Dynamic Visualization for Clinical Insights (DaVinci)</h1>
<section id="what-is-davinci" class="level3">
<h3 class="anchored" data-anchor-id="what-is-davinci">What is DaVinci?</h3>
<p>DaVinci provides tools to review, aggregate and visualize data to develop and deliver safe and effective treatments for patients. Instead of creating entire R/Shiny applications, DaVinci provides individual modules. Modules are functional building blocks that can be linked together into customized apps. This customization enables App Creators to build their own app according to trial-specific needs without deep R knowledge. The concept of developing loosely coupled, functional units and composing them into a larger application is subsequently referred to as modular approach.</p>
<section id="abstract" class="level3">
<h3 class="anchored" data-anchor-id="abstract">ABSTRACT</h3>
<p>DaVinci is a dynamic, modular framework designed for interactive data exploration and visualization in clinical research. It is particularly intended to support exploratory biomarker analysis and safety review during study conduct. The framework’s modules function as building blocks that can be combined to create customized R/Shiny applications, tailored to specific clinical trial and research project needs. DaVinci offers a variety of functionalities, including the ability to plot, for example, heatmaps, waterfall, and eDISH plots, as well as generate tables and listings. Currently, it boasts twelve output modules, with ongoing development to expand its capabilities. In a move towards community-driven growth and refinement, DaVinci has been open-sourced recently.</p>
</section>
<section id="introduction" class="level3">
<h3 class="anchored" data-anchor-id="introduction">INTRODUCTION</h3>
<p>Successful conduct of clinical trials heavily relies on regular data reviews, in order to ensure patient safety, monitor data flow and recruitment, guarantee protocol compliance, assess data quality, etc. Moreover, regular data reviews are also meant to provide an opportunity for exploratory parameter analysis allowing for the identification of trends, patterns, and relationships within the data that may not be immediately apparent. Compared to extensive static outputs like tables, listings, and figures in PDF format, such data review procedures can be greatly enhanced by utilizing interactive visualization tools. This is where R/Shiny applications have proven excellent means for reviewers to dive deep into the study data through dynamic plots, along with real-time data access.</p>
</section>
<section id="the-modular-approach" class="level3">
<h3 class="anchored" data-anchor-id="the-modular-approach">THE MODULAR APPROACH</h3>
<p>In a naive approach of using R/Shiny for interactive data visualization, one can create a comprehensive stand-alone application, that satisfies the needs of as many studies as possible. It has been observed, however, that these stand alone apps quickly become unwieldy and miss user expectations. Moreover, some minor trial-specific adjustments are impossible to be implemented without disrupting functionality for other trials. Therefore, instead of creating universal stand-alone apps, DaVinci intends to provide individual modules. R/Shiny modules serve as functional building blocks that can be easily linked together into customized apps. This customization enables trial teams to quickly build trial-specific but lean apps without extensive programming knowledge. The concept of developing loosely coupled, functional units and composing them into a larger application is referred to as modular approach</p>
<div class="quarto-figure quarto-figure-center">
<figure class="figure">
<p><img src="quarto/images/building_blocks.png" class="img-fluid quarto-figure quarto-figure-center figure-img"></p>
</figure>
</div>
<p>The figure above schematically demonstrates the modular approach by means of building blocks. In this analogy, the building blocks symbolize the different modules. Depending on the use case, one might choose and assemble the building blocks to build a helicopter, a motorcycle, or a pick-up truck. Similarly, the trial team will develop their trial-specific application by choosing and assembling the modules based on the team’s unique requirements.</p>
</section>
<section id="conclusion" class="level3">
<h3 class="anchored" data-anchor-id="conclusion">CONCLUSION</h3>
<p>In conclusion, DaVinci provides a dynamic, modular framework for interactive data exploration and visualization in the field of clinical research. Its modular design allows for the creation of lean, trial-specific applications, making this framework flexible and versatile. One of DaVinci’s key features is its drill-down functionality, which is especially useful for data exploration and review during study conduct. It also integrates with modules from other modular open-source frameworks like Teal, further diversifying its range of functionalities. By making DaVinci open-source on GitHub, it opens the door for improvements and growth from the community.</p>
<section id="more-information-can-be-found-on-the-davinci-website" class="level4">
<h4 class="anchored" data-anchor-id="more-information-can-be-found-on-the-davinci-website">More information can be found on the <a href="https://boehringer-ingelheim.github.io/davinci/">DaVinci website</a></h4>
</section>
<section id="more-information-can-be-found-on-the-davinci-website" class="level3">
<h3 class="anchored" data-anchor-id="more-information-can-be-found-on-the-davinci-website">More information can be found on the <a href="https://boehringer-ingelheim.github.io/davinci/">DaVinci website</a></h3>
</section>
</section>

Expand Down
45 changes: 42 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,46 @@
# Dynamic Visualization for Clinical Insights (DaVinci)

### What is DaVinci?
### ABSTRACT
DaVinci is a dynamic, modular framework designed for interactive data exploration and visualization in clinical
research. It is particularly intended to support exploratory biomarker analysis and safety review during study conduct.
The framework's modules function as building blocks that can be combined to create customized R/Shiny
applications, tailored to specific clinical trial and research project needs. DaVinci offers a variety of functionalities,
including the ability to plot, for example, heatmaps, waterfall, and eDISH plots, as well as generate tables and listings.
Currently, it boasts twelve output modules, with ongoing development to expand its capabilities. In a move towards
community-driven growth and refinement, DaVinci has been open-sourced recently.

DaVinci provides tools to review, aggregate and visualize data to develop and deliver safe and effective treatments for patients. Instead of creating entire R/Shiny applications, DaVinci provides individual modules. Modules are functional building blocks that can be linked together into customized apps. This customization enables App Creators to build their own app according to trial-specific needs without deep R knowledge. The concept of developing loosely coupled, functional units and composing them into a larger application is subsequently referred to as modular approach.
### INTRODUCTION
Successful conduct of clinical trials heavily relies on regular data reviews, in order to ensure patient safety, monitor
data flow and recruitment, guarantee protocol compliance, assess data quality, etc. Moreover, regular data reviews
are also meant to provide an opportunity for exploratory parameter analysis allowing for the identification of trends,
patterns, and relationships within the data that may not be immediately apparent.
Compared to extensive static outputs like tables, listings, and figures in PDF format, such data review procedures can
be greatly enhanced by utilizing interactive visualization tools. This is where R/Shiny applications have proven
excellent means for reviewers to dive deep into the study data through dynamic plots, along with real-time data
access.

### More information can be found on the [DaVinci website](https://boehringer-ingelheim.github.io/davinci/)
### THE MODULAR APPROACH
In a naive approach of using R/Shiny for interactive data visualization, one can create a comprehensive stand-alone
application, that satisfies the needs of as many studies as possible. It has been observed, however, that these stand alone apps quickly become unwieldy and miss user expectations. Moreover, some minor trial-specific adjustments
are impossible to be implemented without disrupting functionality for other trials. Therefore, instead of creating
universal stand-alone apps, DaVinci intends to provide individual modules. R/Shiny modules serve as functional
building blocks that can be easily linked together into customized apps. This customization enables trial teams to
quickly build trial-specific but lean apps without extensive programming knowledge. The concept of developing
loosely coupled, functional units and composing them into a larger application is referred to as modular approach

![](quarto/images/building_blocks.png){fig-align="center"}

The figure above schematically demonstrates the modular approach by means of building blocks. In this analogy, the building
blocks symbolize the different modules. Depending on the use case, one might choose and assemble the building blocks
to build a helicopter, a motorcycle, or a pick-up truck. Similarly, the trial team will develop their trial-specific
application by choosing and assembling the modules based on the team’s unique requirements.

### CONCLUSION
In conclusion, DaVinci provides a dynamic, modular framework for interactive data exploration and visualization in the
field of clinical research. Its modular design allows for the creation of lean, trial-specific applications, making this
framework flexible and versatile. One of DaVinci's key features is its drill-down functionality, which is especially useful
for data exploration and review during study conduct. It also integrates with modules from other modular open-source
frameworks like Teal, further diversifying its range of functionalities. By making DaVinci open-source on GitHub, it
opens the door for improvements and growth from the community.

#### More information can be found on the [DaVinci website](https://boehringer-ingelheim.github.io/davinci/)
26 changes: 5 additions & 21 deletions index.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -18,33 +18,17 @@ To create an app, you need to first identify which modules to include. Consider
DaVinci modules are provided as R packages, with each package containing one or multiple modules. Choose the modules freely according to the purpose of your visualization. For instance, while a heatmap may not be necessary for data cleaning, it could be useful for biomarker analyses. Safety review might benefit from an eDISH plot, and listings are likely to be needed in all use cases. These are only examples, modules can be combined as needed. Some modules even have the capability to interact with each other.


```{=html}
<div><button onclick="window.location.href = 'quarto/getting_started.qmd';" class="button">Getting Started</button> explains what requriments need to be met and how to actual create an app.</div>
<div><button onclick="window.location.href = 'quarto/modules.qmd';" class="button">DaVinci Modules</button> shows a complete list of all DaVinci modules.</div>
```

### The DaVinci framework

The DaVinci framework consists of several modules. A complete list of all the modules can be found [here](quarto/modules.qmd).
For more details about how to actually create an app, refer to [Getting Started](quarto/getting_started.qmd).

<br>
<div>
<video width="100%" height="auto" controls allowfullscreen >
<source src="quarto/images/short_video.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>



<!-- The DaVinci framework consists of the following packages: -->


<!-- | package | description | -->
<!-- |-----------------|-------------| -->
<!-- |[{dv.bookman}](https://boehringer-ingelheim.github.io/dv.bookman/){target="_blank"}| The Bookmark Manager module allows to safe app configurations and restore them at a later point in time from a centralized view. | -->
<!-- |[{dv.clinlines}](https://boehringer-ingelheim.github.io/dv.clinlines/){target="_blank"}| The Clinical Timelines module offers an overview of pre-defined events and time intervals for all subjects over time. | -->
<!-- |[{dv.edish}](https://boehringer-ingelheim.github.io/dv.edish/){target="_blank"}| The eDISH module supports the assessment of drug-induced liver injury by means of the (modified) evaluation of Drug-Induced Serious Hepatotoxicity plot. | -->
<!-- |[{dv.explorer.parameter}](https://boehringer-ingelheim.github.io/dv.explorer.parameter/){target="_blank"}| The {dv.explorer.parameter} package contains multiple modules offering statistical plots like the Boxplot module, Correlation Heatmap module, Forest Plot module, Lineplot module, ROC (receiver operating characteristics) module, Scatterplot module, Matrix of Scatterplots module, and the Waterfall Plus Heatmap module. | -->
<!-- |[{dv.filter}](https://boehringer-ingelheim.github.io/dv.filter/){target="_blank"}| The {dv.filter} package enables dynamic data filtering. | -->
<!-- |[{dv.listings}](https://boehringer-ingelheim.github.io/dv.listings/){target="_blank"}| The Listings module displays arbitrary datasets as listings. | -->
<!-- |[{dv.loader}](https://boehringer-ingelheim.github.io/dv.loader/){target="_blank"}| The {dv.loader} package facilitates data loading from either a local or remote source. | -->
<!-- |[{dv.manager}](https://boehringer-ingelheim.github.io/dv.manager/){target="_blank"}| The {dv.manager} package is designed to make it quick and easy to create and deploy Shiny applications containing DaVinci modules. | -->
<!-- |[{dv.papo}](https://boehringer-ingelheim.github.io/dv.papo/){target="_blank"}| The Patient Profile module presents data on subject-level. | -->
<!-- : {tbl-colwidths="[25,75]"} -->
4 changes: 2 additions & 2 deletions quarto/general.scss
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ $nav-tabs-link-active-bg: #00E47C;
$nav-tabs-link-active-color: #00E47C;

// Navbar
$navbar-bg: #002b36;
$navbar-bg: #08312a;
$navbar-fg: #00E47C;
$navbar-hl: #00E47C;
//$nav-tabs-link-active-bg: #00E47C;
//$nav-tabs-link-active-color: #00E47C;

// Footer
$footer-bg: #002b36;
$footer-bg: #08312a;
$footer-fg: #00E47C;


Expand Down
63 changes: 14 additions & 49 deletions quarto/style.scss
Original file line number Diff line number Diff line change
@@ -1,49 +1,14 @@
/***************************************/
/***** flipcard settings *****/
/***************************************/
.flip-card {
background-color: transparent;
width: 150px;
height: 150px;
perspective: 1000px; /* required for 3D effect */
}

/* This container is needed to position the front and back side */
.flip-card-inner {
position: relative;
width: 100%;
height: 100%;
text-align: center;
transition: transform 0.8s;
transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
position: absolute;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
-webkit-backface-visibility: hidden; /* Safari */
backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
background-color: #E5E3DE;//white;
color: black;
}

/* Style the back side */
.flip-card-back {
background-color: #E5E3DE;//white;
color: black;
transform: rotateY(180deg);
}
.button {
width: 15%;
font: bold 14px Arial;
text-decoration: none;
background-color: #08312a;
color: #00E47C;
margin: 5px;
padding: 10px 14px 10px 14px;
border-top: 1px solid #002b36;
border-right: 2px solid #002b36;
border-bottom: 2px solid #002b36;
border-left: 1px solid #002b36;
border-radius: 4px;
}

0 comments on commit e6ba6cd

Please sign in to comment.