390 lines
No EOL
12 KiB
TeX
390 lines
No EOL
12 KiB
TeX
\documentclass[hyperref={pdfencoding=auto,colorlinks=false}]{beamer}
|
|
\usepackage{fontspec}
|
|
\usepackage{fontawesome5}
|
|
\usepackage{polyglossia}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{fit}
|
|
\usepackage{caption}
|
|
\usepackage{csquotes}
|
|
|
|
\usetheme{metropolis}
|
|
\metroset{block=fill}
|
|
|
|
\setdefaultlanguage[variant=usmax]{english}
|
|
\setotherlanguage[variant=german,
|
|
spelling=new,
|
|
latesthyphen=true]{german}
|
|
|
|
\title{eLabFTW}
|
|
\subtitle{Free Electronic Lab Notebook}
|
|
\author[Alexander Minges]{\includegraphics[width=0.2\textwidth]{img/elabftw-logo-small.pdf}\\Alexander Minges}
|
|
\institute[Biochemical Plant Physiology]{Institute of Biochemical Plant Physiology\\Heinrich Heine University Düsseldorf}
|
|
\date{\scriptsize \textquote{Thementag Elektronische Laborbücher}\\26. March 2019 -- University of Rostock}
|
|
|
|
\hypersetup{pdfauthor={Alexander Minges}}
|
|
|
|
\newcommand\blfootnote[1]{%
|
|
\begingroup
|
|
\renewcommand\thefootnote{}\footnote{#1}%
|
|
\addtocounter{footnote}{-1}%
|
|
\endgroup
|
|
}
|
|
|
|
\begin{document}
|
|
|
|
\maketitle
|
|
|
|
\section{Introduction}
|
|
|
|
\begin{frame}
|
|
\frametitle{What is eLabFTW?}
|
|
eLabFTW is a generic electronic lab notebook (ELN)
|
|
\pause
|
|
\begin{itemize}
|
|
\item Free and open-source software (GNU AGPL 3.0~\includegraphics[height=1.0em]{img/AGPLv3_Logo.pdf})\pause
|
|
\item Community-driven development -- by scientists, \\for scientists\pause
|
|
\item Browser-based user interface compatible with all commonly used browsers and (mobile) devices\pause
|
|
\item Multilingual
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{What is eLabFTW?}
|
|
\begin{center}
|
|
\large eLabFTW is free and open-source software (FLOSS)
|
|
\end{center}
|
|
\pause
|
|
\begin{description}
|
|
\item[Free as in \textquote{beer}] eLabFTW is (and will always be) \\available \textbf{free of charge}
|
|
\item[Free as in \textquote{freedom of speech}] Its \textbf{source code} is available and can be \textbf{adjusted, changed and freely distributed}
|
|
\end{description}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Why electronic lab notebooks?}
|
|
\begin{center}
|
|
\large Hand-written lab notebooks are anachronistic\ldots
|
|
\end{center}
|
|
\pause
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.75\textwidth]{img/anachronismus_1.png}
|
|
\blfootnote{Dirnagl \& Przesdzing 2016 (doi: 10.12688/f1000research.7628.1)}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{A brief history of eLabFTW}
|
|
\Huge\faClock\normalsize
|
|
\begin{description}
|
|
\item[2012] Initiated by Nicolas Carpi at the \emph{Institut Curie}
|
|
\item[Feb. 2013] First public version (0.7.0)
|
|
\item[2018] Announced as an officially supported software project by the \emph{Institut Curie}
|
|
\item[Aug. 2018] Current major version 2.0 released
|
|
\item[Mar. 2019] Feature preview 2.1.0-alpha
|
|
\end{description}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{eLabFTW is platform independent}
|
|
\begin{center}
|
|
\Huge\faPhp\hspace{1em}\faDatabase\hspace{1em}\faServer
|
|
\end{center}
|
|
|
|
\begin{itemize}
|
|
\item Installation on a \textbf{server} (Webserver + PHP + MySQL/MariaDB)
|
|
\item Access via \textbf{web browser} on many different clients (desktop, notebook, tablet, smartphone)
|
|
\item \textbf{No client software} needed
|
|
\item No dependency on specific \textbf{operating systems}
|
|
\end{itemize}
|
|
|
|
\begin{center}
|
|
\LARGE\faWindows\hspace{0.75em}\faLinux\hspace{0.75em}\faApple\hspace{0.75em}\faFreebsd \\
|
|
\faFirefox\hspace{1.25em}\faChrome\hspace{1.25em}\faSafari\hspace{1.25em}\faEdge
|
|
\end{center}
|
|
\end{frame}
|
|
|
|
|
|
\begin{frame}
|
|
\frametitle{Used worldwide}
|
|
\begin{figure}
|
|
\includegraphics[width=0.9\textwidth]{img/users.pdf}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\section{Features}
|
|
|
|
\begin{frame}
|
|
\frametitle{User interface}
|
|
\centering eLabFTW features a modern and clean UI
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=\textwidth]{img/elab/elab_01.png}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Data Model}
|
|
\huge\faFlask\hspace{0.5em}\large Experimente\normalsize
|
|
\begin{itemize}
|
|
\item Freely definable \textbf{status} (e.g. \textquote{finished}, \textquote{in progress} \ldots)
|
|
\item \textbf{time stamping} of experiments
|
|
\item Definition of \textbf{templates and stepped procedures}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Data model}
|
|
\huge\faDatabase\hspace{0.5em}\large Database entries\normalsize
|
|
\begin{itemize}
|
|
\item \textbf{Templates and sub types}
|
|
\item Use cases: laboratory inventory, protocols, \ldots
|
|
\item Calendar with \textbf{bookable items} (e.g.\ technical facilities)
|
|
\end{itemize}
|
|
\pause
|
|
\huge\faTag\hspace{0.5em}\large Categorization\normalsize
|
|
\begin{itemize}
|
|
\item Freely choosable \textbf{tags}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Creating experiments and database items}
|
|
\only<1>{\centering Rich text editor}
|
|
\only<2>{\centering Attaching of files with previews}
|
|
\begin{figure}
|
|
\centering
|
|
\only<1>{\includegraphics[width=\textwidth]{img/elab/elab_editor1.png}}
|
|
\only<2>{\includegraphics[width=\textwidth]{img/elab/elab_editor2.png}}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Laboratory inventory}
|
|
\centering Inventory management using templates
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=\textwidth]{img/elab/elab_03.png}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Integrated calendar}
|
|
\centering Booking equipment and facilities
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.8\textwidth]{img/elab/elab_02.png}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Creating experiments and database items}
|
|
Additional features
|
|
\begin{itemize}
|
|
\item Alternative input syntax: \textbf{structured text} (Markdown)\pause
|
|
\item \textbf{Preview} of common file formats (u.a. PDF, TIFF, PDB, SDF,\ldots)\pause
|
|
\item \textbf{Versioning} of entries and attached files\pause
|
|
\item \textbf{Linking} of/between experiments and database items\pause
|
|
\item \textbf{Sharing} experimens with other users\pause
|
|
\item Rendering of \textbf{math formula}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Upcoming features}
|
|
New in 2.1.0 (incomplete):
|
|
\begin{itemize}
|
|
\item Possibility to include a \textbf{privacy statement} (\textquote{GDPR-complicance})
|
|
\item \textbf{Mailinglists}
|
|
\item \textbf{Reports} in admin interface (e.g. disk space usage)
|
|
\item Miscellaneous things \textquote{under the hood}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Time stamping}
|
|
Status of experiments
|
|
\begin{columns}[c]
|
|
\begin{column}{0.8\textwidth}
|
|
\begin{itemize}
|
|
\small
|
|
\item Proof of defined status at time point \textquote{X}
|
|
\item Time stamping authority (TSA) according to RFC~3161 (e.g. DFN)
|
|
\item Verification of data integrity by cryptographic hash (SHA256)
|
|
\end{itemize}
|
|
\end{column}
|
|
\begin{column}{0.2\textwidth}
|
|
\includegraphics[width=\textwidth]{img/Zeitstempel_01.jpg}
|
|
\end{column}
|
|
\end{columns}
|
|
\pause
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.95\textwidth]{img/elab/ts01.png}
|
|
\end{figure}
|
|
\blfootnote{Figure: Wikimedia Commons; CC BY-SA 4.0 \faCreativeCommons~\faCreativeCommonsBy~\faCreativeCommonsSa\hspace{1em}}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Data export/import}
|
|
\begin{itemize}
|
|
\item Export of single experiments and data items as \textbf{ZIP} archive
|
|
\item Export as \textbf{PDF} including preview of attached files (if possible)
|
|
\item Mass export as \textbf{CSV} (text-only) or \textbf{ZIP} archive (incl. attached files)
|
|
\item Import of tables (\textbf{CSV}) to create experiments or database items
|
|
\end{itemize}
|
|
\centering
|
|
\huge\faFileArchive\hspace{0.75em}\faFilePdf\hspace{0.75em}\faFile
|
|
\end{frame}
|
|
|
|
\section{Integration into existing infrastructure}
|
|
|
|
\begin{frame}
|
|
\frametitle{User authentification}
|
|
\begin{itemize}
|
|
\item Default after installation: local user accounts
|
|
\item Itegration into existing identity management (SAML 2.0)
|
|
\item Combination of local and centrally managed accounts possible
|
|
\end{itemize}
|
|
\begin{center}
|
|
\huge\faUsers\normalsize
|
|
\end{center}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{API access}
|
|
Access via public REST API
|
|
\begin{itemize}
|
|
\item Interaction with lab equipment and processes
|
|
\item Automated creation/termination of experiments
|
|
\item Upload of files to eLabFTW
|
|
\item Data export in JSON format
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]
|
|
\frametitle{API access}
|
|
\begin{block}{Creating an experiment using \emph{bash} scripts}
|
|
\scriptsize\begin{verbatim}
|
|
#!/bin/bash
|
|
export API_KEY=XXXXX
|
|
curl -X POST -H "Authorization: $API_KEY" \
|
|
"https://elabftw.example.org/api/v1/experiments"
|
|
|
|
# Upload and attach file to experiment 3
|
|
curl -X POST -F "file=@your-file.jpg" -H \
|
|
"Authorization: $API_KEY" \
|
|
"https://elabftw.example.org/api/v1/experiments/3"
|
|
\end{verbatim}
|
|
\end{block}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{API access}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.5\textwidth]{img/python-logo.pdf}
|
|
\end{figure}
|
|
\begin{figure}
|
|
\centering
|
|
Python library for easy interaction with eLabFTW:\vspace{1em}
|
|
\includegraphics[width=0.25\textwidth]{img/elab/elabapy.png}
|
|
\end{figure}
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]
|
|
\frametitle{API access}
|
|
\begin{block}{Creating an experiment using \emph{python}}
|
|
\tiny\begin{verbatim}
|
|
#!/sbin/env python
|
|
import elabapy
|
|
|
|
manager = elabapy.Manager(endpoint="https://elab.example.org/api/v1/",
|
|
token="XXXX")
|
|
exp = manager.create_experiment()
|
|
|
|
files = {'file': open('report.xls', 'rb')}
|
|
print(manager.upload_to_experiment(exp["id], files))
|
|
\end{verbatim}
|
|
\end{block}
|
|
\pause
|
|
Additional examples:~\small\url{https://doc.elabftw.net/api.html}
|
|
\end{frame}
|
|
|
|
\section{How to try?}
|
|
|
|
\begin{frame}
|
|
\frametitle{Demo}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.5\textwidth]{img/elabftw-logo.pdf}
|
|
\end{figure}
|
|
\centering
|
|
\url{https://demo.elabftw.net}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Installation}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=0.5\textwidth]{img/docker.eps}
|
|
\end{figure}
|
|
\centering
|
|
\url{https://doc.elabftw.net/install.html}
|
|
\end{frame}
|
|
|
|
\section{Finally}
|
|
|
|
\begin{frame}
|
|
\frametitle{Further questions?}
|
|
\begin{center}
|
|
\huge\faGlobe\normalsize
|
|
\end{center}
|
|
\begin{description}
|
|
\item[Website] \small\url{https://www.elabftw.net}\normalsize
|
|
\item[Documentation] \small\url{https://doc.elabftw.net}\normalsize
|
|
\item[Source code] \small\url{https://github.com/elabftw/elabftw}\normalsize
|
|
\end{description}
|
|
\vfill
|
|
\begin{center}
|
|
\huge\faEnvelope\normalsize
|
|
|
|
\url{alexander.minges@hhu.de}~(de/en)\\
|
|
\url{nicolas.carpi@curie.fr}~(fr/en)
|
|
\end{center}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Acknowledgments}
|
|
\begin{columns}[c]
|
|
\begin{column}{0.7\textwidth}
|
|
Prof.~Dr.~Georg Groth\\
|
|
Institute of Biochemical Plant Physiology\\
|
|
\emph{Heinrich Heine University Düsseldorf}
|
|
|
|
\vspace{3em}
|
|
|
|
Nicolas Carpi\\
|
|
\emph{Institut Curie, Paris}\\
|
|
France
|
|
\end{column}
|
|
\begin{column}{0.3\textwidth}
|
|
\includegraphics[width=\textwidth]{img/hhu-logo.pdf}
|
|
|
|
\vspace{3em}
|
|
|
|
\includegraphics[width=\textwidth]{img/institut-curie.jpg}
|
|
\end{column}
|
|
\end{columns}
|
|
\vfill
|
|
\blfootnote{\faCreativeCommons~\faCreativeCommonsBy~\faCreativeCommonsSa\hspace{1em}Creative Commons BY-SA 4.0}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Finally\ldots}
|
|
\begin{center}
|
|
\Huge Thank you for your kind attention!
|
|
\end{center}
|
|
\end{frame}
|
|
|
|
\end{document} |