Design Philosophy

Developers should conform to our following design goals:

  • The database and user interface can be centralised for a single lab, so all lab members can use it instantly in their browser without requiring different installs.

  • The user interface is intuitive to use and user-friendly. Researchers can immediately start uploading, annotating, processing and analysing their experimental data.

  • The schema is designed to be as simple as possible while still capturing enough structure for advanced analysis.

  • Standard data processing and analyses are provided out of the box in the user interface.

  • For more tailored analyses, the python package is easily extendible.

  • Antelop supports a range of different hardware infrastructures, including:
    • The choice between self-hosting the database or using web services such as AWS.

    • Support for a number of computational environments, including the option to run heavy computations on a HPC, a dedicated computing server, or locally.

    • The choice of a persistent web interface on a dedicated server, or running the GUI locally like a Jupyter notebook.

  • The setup is made as simple as possible, namely:
    • The MySQL database and S3 store can be installed and configured quickly via docker containers.

    • The cluster pipelines run on Nextflow with all dependencies containerised, and we provide a simple install script to configure and set this up.

    • The user interface and python package can be installed locally via pip, and are configured via a simple command line tool or a toml file.

  • The benefits of a SQL database all apply, including:
    • Centralised data storage for the lab.

    • Simple management of user permissions.

    • Easy sharing of data with collaborators.

    • The ability to perform automated/manual backups of the entire database.

    • Very fast and flexible database queries.