Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 11 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.1%) to scientific vocabulary
Repository
GPCRDB nodes for Knime
Basic Info
Statistics
- Stars: 3
- Watchers: 4
- Forks: 1
- Open Issues: 4
- Releases: 12
Metadata Files
README.md
GPCRDB node for KNIME
KNIME plugin for retrieving data from https://gpcrdb.org, GPCRdb website contains data, web tools and diagrams for G protein-coupled receptors (GPCRs).
Installation
Requirements:
- KNIME, https://www.knime.org, version 5.1 or higher
Steps to get GPCRDB nodes inside KNIME:
- Goto Help > Install new software ... menu
- Press add button
- Fill text fields with
https://3d-e-chem.github.io/updates/5.1 - Select --all sites-- in work with pulldown
- Open KNIME 3D-e-Chem Contributions folder
- Select GPCRDB
- Install software & restart
Usage
See example workflow in examples folder.
Build
Requires Maven and JDK 8.
shell
mvn verify
Jar has been made in plugin/target folder.
An Eclipse update site will be made in p2/target/repository repository.
Development
Steps to get development environment setup based on https://github.com/knime/knime-sdk-setup#sdk-setup:
- Install Java 17
- Install Eclipse for RCP and RAP developers
- Configure Java 17 inside Eclipse Window > Preferences > Java > Installed JREs
- Import this repo as an Existing Maven project
- Activate target platform by going to Window > Preferences > Plug-in Development > Target Platform and check the
KNIME Analytics Platform (5.1) - nl.esciencecenter.e3dchem.knime.molviewer.targetplatform/KNIME-AP-5.1.targettarget definition.
During import the Tycho Eclipse providers must be installed.
New release
- Update versions in pom files with
mvn org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=<version>-SNAPSHOTcommand. - Commit and push changes
- Create package with
mvn package, will create update site inp2/target/repository - Test node by installing it from local update site
- Append new release to 3D-e-Chem update site
- Make clone of https://github.com/3D-e-Chem/3D-e-Chem.github.io repo
- Append release to 3D-e-Chem update site with
mvn install -Dtarget.update.site=<3D-e-Chem repo/updates>
- Commit and push changes in this repo and 3D-e-Chem.github.io repo
- Create a Github release
- Update Zenodo entry
- Fix authors
- Fix license
- Make nodes available to 3D-e-Chem KNIME feature by following steps at https://github.com/3D-e-Chem/knime-node-collection#new-release
Create GPCRDB client
- Download swagger code generator
shell
wget http://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.3.0/swagger-codegen-cli-2.3.0.jar
Download and unpack the swagger rewriter
Generate a Swagger spec for the client
Install the swagger rewriter from https://github.com/3D-e-Chem/swagger-rewriter
shell
swagger-rewriter/bin/swagger-rewriter \
https://gpcrdb.org/services/reference/api-docs/ \
client-config/swagger-rewriter.config.yml \
client-config/gpcrdb.swagger-spec.json
3.1 Optionally, make manual changes to client-config/gpcrdb.swagger-spec.json
- Generate a client for GPCRDB web service using the rewritten spec
shell
java -jar swagger-codegen-cli-2.3.0.jar generate \
--input-spec client-config/gpcrdb.swagger-spec.json \
--output client \
--lang java \
--config client-config/swagger-codegen.config.json
- Compile client
shell
cd client
mvn package
- Make client jar and it's dependencies available in plugin
shell
cp -r target/lib/* target/*jar ../plugin/lib/
- Remove test dependencies
shell
rm plugin/lib/*-tests.jar plugin/lib/junit* plugin/lib/hamcrest*
- Update
plugin/META-INF/MANIFEST.MF,plugin/build.propertiesfiles to reflect contents of lib/
Create stub recordings for integration tests
The test workflow are tested against a mocked web server and not the actual https://gpcrdb.org site.
The mock server is called WireMock and normally gives empty responses.
To have WireMock server return filled responses, stubs stored in tests/src/test/resources/ directory must be provided.
The stubs can be recorded by starting a WireMock server in recording mode by:
shell
java -jar tests/lib/wiremock-standalone-2.5.0.jar --proxy-all="https://gpcrdb.org/" \
--port=8089 --record-mappings --verbose --root-dir=tests/src/test/resources/
Then in a KNIME workflow in the GPCRDB nodes set the base path to http://localhost:8089.
Executing the workflow will fetch data from https://gpcrdb.org/ via the WireMock server and cause new stubs to be recorded in the tests/src/test/resources/ directory.
To run the test workflows from inside KNIME desktop environment start the WireMock server in mock mode by:
shell
java -jar tests/lib/wiremock-standalone-2.5.0.jar --port=8089 --verbose --root-dir=tests/src/test/resources/
Then import the test workflows in tests/src/knime/ directory, select the workflow in the KNIME explorer and in the context menu (right-click) select Run as workflow test.
References
- V Isberg, S Mordalski, C Munk, K Rataj, K Harpsøe, AS Hauser, B Vroling, AJ Bojarski, G Vriend, DE Gloriam. “GPCRdb: an information system for G protein-coupled receptors”, 2016, Nucleic Acids Res., 44, D356-D364. 10.1093/nar/gkv1178
- V Isberg, B Vroling, R van der Kant, K Li, G Vriend* and DE Gloriam*, “GPCRDB: an information system for G protein-coupled receptors”, 2014, Nucleic Acids Res., 42 (D1), D422-D425. 10.1093/nar/gkv1178
Owner
- Name: 3D-e-Chem NLeSC project
- Login: 3D-e-Chem
- Kind: organization
- Location: Amsterdam, The Netherlands
- Website: https://www.esciencecenter.nl/project/3d-e-chem
- Repositories: 33
- Profile: https://github.com/3D-e-Chem
Software repositories for 3D-e-Chem project of Netherlands eScience Center
Citation (CITATION.cff)
# YAML 1.2 # Metadata for citation of this software according to the CFF format (https://citation-file-format.github.io/) cff-version: 1.0.3 message: If you use this software, please cite it as below. # FIXME title as repository name might no be best name, please make human readable title: KNIME GPCRdb nodes doi: 10.5281/zenodo.3257985 authors: - given-names: Stefan family-names: Verhoeven affiliation: Nederlands eScience Center - given-names: Albert family-names: Kooistra name-particle: J. affiliation: Vrije Universiteit Amsterdam - given-names: Marton family-names: Vass affiliation: Vrije Universiteit Amsterdam - given-names: Ross family-names: McGuire affiliation: UMC Nijmegen - given-names: Tina family-names: Ritschel affiliation: UMC Nijmegen - given-names: Chris family-names: de Graaf affiliation: Vrije Universiteit Amsterdam version: 1.4.1 date-released: 2019-06-27 repository-code: https://github.com/3D-e-Chem/knime-gpcrdb license: Apache-2.0