SynBioHub is a Web-based repository for synthetic biology, enabling users to browse, upload, and share synthetic biology designs.
To learn more about the SynBioHub, including installation instructions and documentation, visit the SynBioHub wiki.
To access a sample instance of SynBioHub containing enriched Bacillus subtilis data, features from the Escherichia coli genome, and the complete iGEM Registry of Standard Biological Parts, visit synbiohub.org. To access a bleeding-edge version of SynBioHub, visit dev.synbiohub.org.
The recommended way to install SynBioHub is via the Docker image. See Installation for more information.
SynBioHub has both JavaScript (node.js) and Java components.
Linux (only tested with Ubuntu 18.04.01) or macOS
A JDK | OS | Command |
---|---|---|
Ubuntu | apt install default-jdk |
|
Mac | brew install openjdk |
OS | Command |
---|---|
Ubuntu | apt install maven |
Mac | brew install maven |
node.js >= 11.0.0
OS | Command/Link |
---|---|
Ubuntu | visit https://nodejs.org/en/ |
Mac | brew install node |
OpenLink Virtuoso 7.x.x
OS | Command/Link |
---|---|
Ubuntu | visit https://github.com/openlink/virtuoso-opensource |
Mac | brew install virtuoso |
OS | Command |
---|---|
Ubuntu | apt install raptor2-utils |
Mac | brew install raptor |
OS | Command |
---|---|
Ubuntu | apt install jq |
Mac | brew install jq |
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
apt update
apt install default-jdk maven raptor2-utils nodejs jq build-essential python
virtuoso-t +configfile /usr/local/virtuoso-opensource/var/lib/virtuoso/db/virtuoso.ini -f
brew install openjdk maven node virtuoso raptor jq python
cd /usr/local/Cellar/virtuoso/7.2.5.1_1/var/lib/virtuoso/db
/usr/local/Cellar/virtuoso/7.2.5.1_1/var/lib/virtuoso/db
, or the version might be
different (7.2.5.1_1
might be 7.3.6.1_1
or any other version number).sudo find / -name virtuoso.ini
.
Press the control and c keys simultaneously to quit the search.virtuoso-t -f
git clone https://github.com/SynBioHub/synbiohub
cd synbiohub
cd java && mvn package
cd ../ && yarn install
Make sure that yarn is being used, not 'cmdtest'.npm install nodemon -g && npm install forever -g
npm start
or npm run-script dev
The repository is set up to prohibit commits directly to the master branch.
Commits must be made in another branch, and then a GitHub PR used to merge them into master.
GitHub PRs must be approved by at least one other developer before they can be merged into master.
Additionally, they must pass Travis checks, which build a Docker image and run the SBOLTestSuite and SynBioHub integration tests against it.
Each time a PR is merged into master, the Travis checks are re-run on the master branch, and if they succeed the resulting image is pushed by Travis to DockerHub under the tag snapshot-standalone
.
Releases are published automatically using GitHub Actions. There is an action which fires on release publication. It publishes an image to Docker Hub under the $VERSION-standalone tag, and updates the synbiohub-docker master branch to point to this version. More information available here.