Simulation Verification Service and API
Project description
BioCheck: A Biological Simulation Verification Service
This service utilizes separate containers for REST API management, job processing, and datastorage with MongoDB, ensuring scalable and robust performance.
Getting Started:
HIGH-LEVEL bio_check
API:
The primary method of user-facing interaction for this service is done through the use of a high-level "notebook" api called bio_check
.
A convenient notebook demonstrating the functionality of this service is hosted on Google Colab and can be accessed by clicking the above "Open In Colab" badge.
View the template notebook as an image
Installation of this tooling can be performed using PyPI as such:
pip install bio-check
PLEASE NOTE: You must have >=python3.9
in order to use the high-level api.
FOR DEVELOPERS:
This application (bio_check
) uses a microservices architecture which presents the following libraries:
api
: This library handles all requests including saving uploaded files, pending job creation, fetching results, and contains the user-facing endpoints.storage
: This library handles MongoDB configs as well as bucket-like storages for uploaded files.worker
: This library handles all job processing tasks for verification services such as job status adjustment, job retrieval, and comparison execution.
The installation process is outlined as follows:
-
git clone https://github.com/biosimulators/bio-check.git
-
cd bio-check/bio_check
-
touch .env
-
Enter the following fields into the
.env
file:MONGO_URI=<uri of your mongo instance. In this case we use the standard mongodb image with the app name bio-check> GOOGLE_APPLICATION_CREDENTIALS=<path to your gcloud credentials .json file. Contact us for access> BUCKET_NAME=bio-check-requests-1 # name of the bucket used in this app
-
Ensure that your IP address has been authorized in the
bio-check
cluster within Mongo Atlas.
Notes:
- This application currently uses MongoDB as the database store in which jobs are read/written. Database access is given to both the
api
andworker
libraries. Such database access is executed/implemented with the use of aSupervisor
singleton.
Note (05/22/2024):
The only package source that is currently supported by this tooling is PyPI
. The support of other potential
package sources such as conda
, brew
, apt
, and more is currently under development.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bio_check-1.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1ea4a8fe3239a3ed2fc10f993454474bb10b39e68463ed3fcd52a7799660141 |
|
MD5 | c5a75d5b0f7786c3fe5a62e2e6ab4e53 |
|
BLAKE2b-256 | a8110e0c3e145e816c2a5a3d237a390ed884762753a1f2db96c73213415a3d91 |