Skip to content
Snippets Groups Projects
Verified Commit 77eadb4e authored by Martin Weise's avatar Martin Weise
Browse files

Merge branch 'release-latest' into release-1.4.2

parents 41b87818 ff1bde0e
No related branches found
No related tags found
No related merge requests found
Showing
with 338 additions and 32 deletions
.docs/images/hero.png

298 KiB

.docs/images/screenshots/feature-cloud.png

80.2 KiB

.docs/images/screenshots/feature-identifiers.png

58.5 KiB

.docs/images/screenshots/feature-jupyter.png

96.1 KiB

.docs/images/screenshots/feature-search.png

25.3 KiB

---
title: Home
template: home.html
author: Martin Weise
hide:
- navigation
- toc
social:
cards_layout_options:
title: Documentation that simply works
---
# DBRepo: A Database Repository to Support Research
## Problem Statement
Digital repositories see themselves more frequently encountered with the problem of making databases accessible in their
......@@ -14,9 +16,6 @@ collection. Challenges revolve around organizing, searching and retrieving conte
constitute a major technical burden as their internal representation greatly differs from static documents most digital
repositories are designed for.
[System Description](./system){ .action-button .md-button .md-button--secondary }
[How to use](./usage-overview){ .action-button .md-button .md-button--primary }
## Application Areas
We present a database repository system that allows researchers to ingest data into a central, versioned repository
......
{% extends "main.html" %}
<!-- Render hero under tabs -->
{% block tabs %}
{{ super() }}
<!-- Additional styles for landing page -->
<style>
/* Application header should be static for the landing page */
.md-header {
position: initial;
}
.md-content > article h1 {
display: none;
visibility: hidden;
}
/*!* Remove spacing, as we cannot hide it completely *!*/
.md-main__inner {
margin-top: 0;
}
/*!* Hide main content for now *!*/
/*.md-content {*/
/* display: none;*/
/*}*/
/*!* Hide table of contents *!*/
/*@media screen and (min-width: 60em) {*/
/* .md-sidebar--secondary {*/
/* display: none;*/
/* }*/
/*}*/
/*!* Hide navigation *!*/
/*@media screen and (min-width: 76.25em) {*/
/* .md-sidebar--primary {*/
/* display: none;*/
/* }*/
/*}*/
</style>
<!-- Hero for landing page -->
<section class="mdx-container">
<div class="md-grid md-typeset">
<div class="mdx-hero">
<!-- Hero image -->
<div class="mdx-hero__image">
<img
src="images/hero.png"
alt=""
class="img-border"
width="100%"
draggable="false"/>
</div>
<!-- Hero content -->
<div class="mdx-hero__content" style="margin-top:24px;margin-bottom:24px;">
<h1>DBRepo: A Database Repository to Support Research</h1>
<p>Set up in a few minutes.</p>
<a
href="{{ page.next_page.url | url }}"
title="{{ page.next_page.title | e }}"
style="margin-right: 10px;"
class="action-button md-button md-button--primary">
Get started
</a>
<a
href="{{ 'insiders/' | url }}"
title="Material for MkDocs Insiders"
class="action-button md-button md-button--secondary">
Learn more
</a>
</div>
</div>
</div>
</section>
<section>
<div class="md-grid md-typeset">
<div class="mdx-spotlight">
<figure class="mdx-spotlight__feature">
<a href="../system-services-search/" tabindex="-1" title="Built-in search">
<img src="images/screenshots/feature-search.png"
alt="Built-in search" loading="lazy"
width="500"
height="327">
</a>
<figcaption class="md-typeset">
<h2>Built-in search</h2>
<p>DBRepo makes your dataset <strong>searchable</strong> without extra effort: most metadata is
<strong>generated</strong> automatically for data in your databases. The fast and powerful
OpenSearch database allows a <strong>fast retrieval</strong> of any information.</p>
<p>Adding <strong>semantic mapping</strong> through a suggestion-feature, allows machines to
properly understand the context of your data.</p>
<p>
<a href="../system-services-search/" aria-label="Built-in search">Learn more</a>
</p>
</figcaption>
</figure>
<figure class="mdx-spotlight__feature">
<a href="../system-services-metadata/" tabindex="-1" title="Built-in search">
<img src="images/screenshots/feature-identifiers.png"
alt="Built-in search" loading="lazy"
width="500"
height="327">
</a>
<figcaption class="md-typeset">
<h2>Citable datasets</h2>
<p>Adopting the recommendations of the <strong>RDA-WGDC</strong>, arbitrary subsets can be
precisely, <strong>persistently identified</strong> using system-versioned tables of MariaDB and
the <strong>DOI</strong> schema.</p>
<p>External systems i.e. <strong>metadata harvesters</strong> (OpenAIRE, Google Datasets) can access
these datasets through OAI-PMH, JSON-LD and <strong>FAIR Signposting</strong> protocols.</p>
<p>
<a href="../system-services-metadata/" aria-label="Built-in search">Learn more</a>
</p>
</figcaption>
</figure>
<figure class="mdx-spotlight__feature">
<a href="../usage-python/" tabindex="-1" title="Built-in search">
<img src="images/screenshots/feature-jupyter.png"
alt="Built-in search" loading="lazy"
width="500"
height="327">
</a>
<figcaption class="md-typeset">
<h2>Powerful API for Data Scientists</h2>
<p>With our <strong>strongly typed</strong> Python Library, Data Scientists can import, export and
<strong>work with data</strong> from Jupyter Notebook or Python script, optionally using
<strong>Pandas DataFrames</strong>.
</p>
<p>For example: the <strong>AMQP API Client</strong> can collect continuous data from edge devices
like sensors and store them <strong>asynchronous</strong> in DBRepo.</p>
<p>
<a href="../usage-python/" aria-label="Built-in search">Learn more</a>
</p>
</figcaption>
</figure>
<figure class="mdx-spotlight__feature">
<a href="../deployment-helm/" tabindex="-1" title="Built-in search">
<img src="images/screenshots/feature-cloud.png"
alt="Built-in search" loading="lazy"
width="500"
height="327">
</a>
<figcaption class="md-typeset">
<h2>Cloud Native</h2>
<p>Our <strong>lightweight</strong> Helm chart allows for installations on <strong>any cloud
provider</strong> that has an underlying PV storage provider. DBRepo can be installed from the
Artifacthub repository.</p>
<p>Databases are managed as <strong>MariaDB Galera</strong> Cluster with high degree of replication,
ensuring your data is always <strong>accessible</strong>.</p>
<p>
<a href="../deployment-helm/" aria-label="Built-in search">Learn more</a>
</p>
</figcaption>
</figure>
</div>
</div>
</section>
{% endblock %}
{% extends "base.html" %}
{% block announce %}
<label for="version">Version</label>
<select style="margin-left:8px;" id="version" name="version" onchange="switchVersion(this.options[this.selectedIndex].value)">
<option value="latest">latest</option>
<option value="1.4.2">1.4.2</option>
<option value="1.4.1">1.4.1</option>
<option value="1.4.0">1.4.0</option>
<option value="1.3.0">1.3.0</option>
</select>
{% endblock %}
function getVersion() {
const segments = location.pathname.split('/');
if (segments.length > 4 && (segments[3].match(/[0-9]\.[0-9]\.[0-9]/g) || segments[3] == 'latest')) {
console.debug('version', segments[3]);
return segments[3];
}
console.debug('default version', '__APPVERSION__');
return '__APPVERSION__';
}
function switchVersion(value) {
if (!value) { return }
this.location.href = location.protocol + '//' + location.host + '/infrastructures/dbrepo/' + value + '/';
}
document.getElementById("version").value = getVersion();
\ No newline at end of file
File added
File added
File added
File added
File added
File added
File added
File added
File added
// ----------------------------------------------------------------------------
// Variables: breakpoints
// ----------------------------------------------------------------------------
// Device-specific breakpoints
$break-devices: (
mobile: (
portrait: px2em(220px) px2em(479.75px),
landscape: px2em(480px) px2em(719.75px)
),
tablet: (
portrait: px2em(720px) px2em(959.75px),
landscape: px2em(960px) px2em(1219.75px)
),
screen: (
small: px2em(1220px) px2em(1599.75px),
medium: px2em(1600px) px2em(1999.75px),
large: px2em(2000px)
)
);
\ No newline at end of file
:root,
[data-md-color-accent=indigo] {
--md-primary-fg-color: #006699;
--md-accent-fg-color: #005c8a /* darken 10% */ ;
--md-primary-fg-color--dark: #00537c /* darken 10% */ ; }
img.img-border {
border: 1px solid #b3b3b3; }
.md-typeset .md-button.md-button--secondary {
background: #ffffff; }
.md-typeset .md-button.md-button--secondary:focus, .md-typeset .md-button.md-button--secondary:hover {
color: var(--md-primary-fg-color);
background: #e5e5e5; }
.md-main .md-content a:not(.action-button):not([tabindex]),
.md-main .md-content a:not(.action-button):not([tabindex]) {
color: var(--md-typeset-color);
border-bottom: 2px solid var(--md-primary-fg-color); }
.md-main .md-content a:not(.action-button):not([tabindex]):focus, .md-main .md-content a:not(.action-button):not([tabindex]):hover,
.md-main .md-content a:not(.action-button):not([tabindex]):focus,
.md-main .md-content a:not(.action-button):not([tabindex]):hover {
color: var(--md-typeset-color);
border-bottom: 2px solid var(--md-primary-fg-color--dark); }
.md-banner {
background-color: var(--md-primary-fg-color--dark); }
@keyframes heart {
0%,
40%,
80%,
100% {
transform: scale(1); }
20%,
60% {
transform: scale(1.15); } }
.md-typeset .twitter {
color: #00acee; }
.md-typeset .mastodon {
color: #897ff8; }
.md-typeset .mdx-video {
width: auto; }
.md-typeset .mdx-video__inner {
position: relative;
width: 100%;
height: 0;
padding-bottom: 56.138%; }
.md-typeset .mdx-video iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
border: none; }
.md-typeset .mdx-heart {
animation: heart 1000ms infinite; }
.md-typeset .mdx-badge {
font-size: 0.85em; }
.md-typeset .mdx-badge--right {
float: right;
margin-left: 0.35em; }
.md-typeset .mdx-switch button {
cursor: pointer;
transition: opacity 250ms; }
.md-typeset .mdx-switch button:is(:focus, :hover) {
opacity: 0.75; }
.md-typeset .mdx-switch button > code {
display: block;
color: var(--md-primary-bg-color);
background-color: var(--md-primary-fg-color); }
.md-typeset .mdx-columns ol,
.md-typeset .mdx-columns ul {
columns: 2; }
.md-typeset .mdx-columns li {
break-inside: avoid; }
.md-typeset .mdx-flags {
margin: 2em auto; }
.md-typeset .mdx-flags ol {
list-style: none; }
.md-typeset .mdx-flags ol li {
margin-bottom: 1em; }
.md-typeset .mdx-flags__item {
display: flex;
gap: 0.125rem; }
.md-typeset .mdx-flags__content {
display: flex;
flex: 1;
flex-direction: column; }
.md-typeset .mdx-flags__content span {
display: inline-flex;
align-items: baseline;
justify-content: space-between; }
.md-typeset .mdx-flags__content > span:nth-child(2) {
font-size: 80%; }
.md-typeset .mdx-flags__content code {
float: right; }
.mdx-container {
padding-top: 0.25rem;
background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(0, 0%, 100%, 1)' /></svg>") no-repeat bottom, linear-gradient(to bottom, var(--md-primary-fg-color), #363949 99%, var(--md-default-bg-color) 99%); }
[data-md-color-scheme="slate"] .mdx-container {
background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(230, 15%, 14%, 1)' /></svg>") no-repeat bottom, linear-gradient(to bottom, var(--md-primary-fg-color), #363949 99%, var(--md-default-bg-color) 99%); }
.mdx-hero {
margin: 0 16px;
color: var(--md-primary-bg-color); }
.mdx-hero h1 {
margin-bottom: 20px;
font-weight: 700;
color: currentcolor; }
.mdx-hero__content {
padding-bottom: 120px; }
.mdx-spotlight__feature {
flex-direction: row-reverse; }
.mdx-spotlight .mdx-spotlight__feature {
width: 100%;
display: flex;
flex: 1 0 48%;
flex-flow: row nowrap;
gap: 3.2rem;
margin: 0 0 3.2rem; }
.mdx-spotlight .mdx-spotlight__feature:nth-child(odd) {
flex-direction: row-reverse; }
.mdx-spotlight .mdx-spotlight__feature > figcaption {
text-align: left;
font-style: inherit;
max-width: inherit;
margin: 1em auto 0 .8rem; }
.mdx-spotlight .mdx-spotlight__feature > a {
margin: 2rem 0;
display: block;
flex-shrink: 0; }
.mdx-spotlight .mdx-spotlight__feature > a > img {
border-radius: .2rem;
box-shadow: var(--md-shadow-z2);
display: block;
height: auto;
max-width: 100%;
width: 25rem; }
[data-md-component=announce] .md-banner__inner {
margin-top: 0.2rem;
margin-bottom: 0.2rem; }
/*# sourceMappingURL=custom.css.map */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment