Metadata-Version: 2.4
Name: bycon
Version: 3.0.0b3
Summary: A Python-based environment for the GA4GH Beacon genomics API
Author-email: Michael Baudis <m@baud.is>
License-Expression: CC0-1.0
Project-URL: source, https://codeberg.com/progenetix/bycon
Project-URL: documentation, https://bycon.progenetix.org
Keywords: genomics,Beacon,GA4GH,Progenetix,MongoDB
Classifier: Intended Audience :: Developers
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: base36
Requires-Dist: deepmerge
Requires-Dist: Cython
Requires-Dist: isodate
Requires-Dist: json_ref_dict
Requires-Dist: Markdown
Requires-Dist: mycgi
Requires-Dist: numpy
Requires-Dist: Pillow
Requires-Dist: pyhumps
Requires-Dist: pymongo
Requires-Dist: PyYAML
Requires-Dist: requests
Requires-Dist: scipy
Requires-Dist: setuptools<=80.10.2
Dynamic: license-file

[![License: CC0-1.0](https://img.shields.io/badge/License-CC0%201.0-lightgrey.svg)](http://creativecommons.org/publicdomain/zero/1.0/)

# Bycon - a Python-based full stack environment for the Beacon genomics API

The `bycon` project implements a data hosting environment for genomic and pheno-clinical data aligned with the GA4GH Beacon data model. It provides a Beacon API for data query and retrieval but also has extended functionality with a focus on genomic copy number variation data. For a prominent implementation example showcasing `bycon` features please see the [*Progenetix* oncogenomic resource](https://progenetix.org).

The underlying database system utilizes a _MongoDB_ instance and a storage model following for the most part the GA4GH object model.

Additionally, the `bycon` project implements functions for the ingestion and management of  genomic variants and phenoclinical data,
and provides a front end for the Beacon API as a statically compiled React project
("beaconPlus"). An instance of the _beaconPlus_ front end is accessible at [beaconplus.progenetix.org](https://beaconplus.progenetix.org).

## More Documentation

Documentation has been moved to [`bycon.progenetix.org`](http://bycon.progenetix.org).
Due to the rapid code development it is recommended to keep following the [Changes](http://bycon.progenetix.org/changes/)
page.

## Installation

The preferred method is to modify your local configuration and then perform a
package build and installation running `install.sh` followed by the deployment
script.

The installation is also documented [`on the website`](http://bycon.progenetix.org/installation/).

### `bycon` Libraries option 1 using `./install.sh`

Since the script _only_ copies the script directories and local configuration
directory to the server path, additionally a `bycon` package installation is
needed through either local package installation from source (`install.sh` in the
project's root) or `pip3 install bycon>=3.0.0`.

### `bycon` Libraries option 2 using `pip3 install bycon`

The preferred method is to modify your local configuration and then perform a
package build and installation running the `install.sh` script followed by this
deployment script.

### `beacon.py` Server App using `./scripts/deploy.py`

The install script copies the relevant bycon files to the webserver directory
specified in the `../local-settings/env_paths.yaml` file and sets the file permissions
accordingly. By default, it requires admin permissions (sudo). If you want to run
it without sudo, invoke it with `--no-sudo`. The current use will need to be able
to write into the target directories.



