Using Node.js version 20.10.0
, run npm install
in the root directory of the repository to install dependencies.
The app can be run for development using npm run dev
, and accessed at http://localhost:3000
.
Run npm run build:local
to build. The built app can be run using npm start
, and accessed at http://localhost:3000
.
Using Python version 3.12.4 is recommended.
Create a Python virtual environment and install requirements:
python3 -m venv ./venv
source ./venv/bin/activate
pip install -r ./catalog/build/py/requirements.txt
Then run the script:
npm run build-files-from-ncbi
The environment can be deactivated by running deactivate
, and re-activated by running source ./venv/bin/activate
again.
To build catalog data for use by the app, run the script:
npm run build-brc-db
The list of assemblies is defined in the YAML file catalog/source/assemblies.yml
. Assemblies are labeled
with comments specifying the species name (as defined by NCBI), and sorted alphabetically by species.
To add a new assembly, add a new list item to the assemblies
entry in the YAML, labeled and sorted as appropriate,
consisting of a dictionary with a single entry, accession
, specifying the assembly's accession.
For instance, to add a new assembly for Anopheles gambiae with the accession XXX_000000000.0
, add this line below
the # Anopheles gambiae
comment:
- accession: XXX_000000000.0
The run-checks
GitHub workflow performs checks to ensure that the catalog data and schemas are well-formed; this is done by:
- Linting the schemas via
linkml-lint
. - Converting the schemas to Python, to catch any errors that occur.
- Validating the catalog source files against their corresponding schemas.