GenSpectrum / LAPIS

An API, a query engine, and a database schema for genomic sequences; currently with a focus on SARS-CoV-2
https://lapis-three.vercel.app
GNU Affero General Public License v3.0
19 stars 5 forks source link
covid-19 epidemiology genomics research sars-cov-2

Lightweight API for Sequences (LAPIS)

LAPIS (Lightweight API for Sequences) is a webservice for querying genomic sequences. It is designed for pathogen data to answer genomic epidemiological questions. Main features include:

Hosting LAPIS yourself

LAPIS is designed to be configurable to make analysis of genomic data available to a wide range of users. It is possible to host your own instance of LAPIS and to configure it to your needs. We want to make it as easy as possible to set up your own instance of LAPIS. If you have any trouble, feel free to reach out to us. We are happy to help!

OpenAPI documentation

The swagger ui is available at url.to.lapis:<port>/swagger-ui.html. It will help you to explore the LAPIS API and to test it interactively.

The openApi documentation is generated per LAPIS instance from the provided config.

The OpenAPI specification is available at url.to.lapis:<port>/api-docs (in JSON format) or at url.to.lapis:<port>/api-docs.yaml (in YAML format).

SILO Compatibility

This table shows which LAPIS version is required for which SILO version. Higher versions will also work if they are not specified in the table.

LAPIS SILO
0.2.1 0.2.0
0.1 0.1.0

Repository Structure

Creating A Release

This project uses Release Please to generate releases. On every commit on the main branch, it will update a Pull Request with a changelog. When the PR is merged, the release will be created. Creating a release means:

The changelog and the version number are determined by the commit messages. Therefore, commit messages should follow the Conventional Commits specification. Also refer to the Release Please documentation for more information on how to write commit messages.