Skip to content

MS-Quality-Hub/pymzqc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

457c092 · Jan 9, 2025
Apr 8, 2024
Jan 9, 2025
Apr 8, 2024
Jul 22, 2024
Jan 8, 2025
Jul 22, 2024
Jan 8, 2025
Jan 8, 2025
Dec 12, 2024
Aug 8, 2023
Jul 22, 2024
Jan 8, 2025
Oct 18, 2022
Mar 16, 2022
Jan 8, 2025
Jan 8, 2025
Jan 8, 2025

Repository files navigation

MZQC python library

unit-tests Documentation Status Docker Repository on Quay PyPi version Open In Colab

A python library to create and use mzQC files. Specifically, the library facilitates access to mzQC files in form of a directly usable object representation of mzQC and offers additional functionality to:

  • serialise
  • deserialise
  • check syntax
  • check semantics
  • file-info
  • experimental file-merging

The library follows the formats versioning (which is 'v(Major).(Minor).(Patch)').

This library implements python modules for (de-)serialisation and validity checks of the PSI fileformat mzQC. Find the specification document, examples, and and further documentation there.

Install

Latest Release

Most people will want to install the latest release version of pymzqc. Please install pymzqc via pypi:

pip install pymzqc

From Git

If you want a development version, use for example :

pip install -U git+https://github.com/MS-Quality-hub/pymzqc.git

You can select a development branch of your choice by changing the command after the .git, see the manual build instructions.

Containers

However, we recommend using the ready-built containers to check out the latest updates.

Online docs

To get a nice and simple overview of how pymzqc works, visit here. If you've successfully installed the library and want to jump right in and work on the library, we suggest a peek at the codestructure.

If you however just want to get your toes wet, or use it as-is, have a look at the interactive guides (below).

Interactive pymzqc

Have a go with our interactive python notebooks to explore what is possible.

Development

Contributions are welcome! (Just fork, develop, and open PR.)

Please note that most member attributes of the MZQCFile submodule classes and many functional elements do not conform to PEP8. The element names of the mzQC JSON-schema need to be preserved in order to create a successful and automated JSON<=>pymzqc object mapping. Accordingly, other elements such as functions in all pymzqc modules will keep the JSON-schema names in their naming for consistency.

Repository structure

The python package's code is located in the mzqc folder, continuous testing code in tests, the documentation in doc. The libray-use container descriptions are in containers, if you want a container for library-development, you can use the container description within .devcontainer, more development presets can be found in .vscode. The jupyter and accessories folders are subprojects making use of the library. See their README in the respective sub-folders.

Documentation

The code documentation style convention is of the type Sphinx/numpy.