VSTH is a web server that allows the end user to virtually screen the big compound library by employing high-performance computing power available on Tianhe-2.The VSTH is free and open to all users at http:https://114.67.37.143:9081.
VSTH is implemented with WEGA engine. 3Dmol.js is used as the chemical structure viewer. Beego framework, Bootstrap are used to serve the web pages. HHVSF framework is used to accelerate large scale VS on supercomputers.
$ tree VSTH
├─Admin # ORM models defination.
├─Common
├─conf # Configure files.
├─ctrls # Controller objects.
├─doc
├─logs
├─routers
├─static # Js files, css files, images etc.
├─tools
├─vendor # Third part packages used in VSTH.
└─views # HTML files.
VSTH implementation details are described in the following table.
Tools | Version | Purpose | Linkage |
---|---|---|---|
WEGA | 1.0 | Molecule structure similarity calculation | - |
OpenBabel | 2.4.1 | Chemical file format conversion | http:https://openbabel.org/wiki/Main_Page |
3Dmol.js | - | 3D structure display | http:https://3dmol.csb.pitt.edu/ |
HHVSF | 1.0 | A framework to accelerate large scale VS on supercomputer | https://github.com/pincher-chen/HHVSF |
Beego | 1.8.3 | A web server framework based on golang | https://beego.me/ |
Bootstrap | 3.3.7 | Front-end component library | http:https://getbootstrap.com/ |
MongoDB | 3.2.9 | Storage database | https://www.mongodb.com/ |
The back-end of VSTH is written by golang. It is easy to launch web services by using go command.
$ go build main.go
It is necessary to mention that the third part packages used in VSTH has been put into the 'vendor' folder. The verison of golang used to compile this project should support the 'vendor' folder. The latest version of golang (1.10) is recommended.
When you deploy this project on your own computing system, the configure file 'app.conf' in the conf folder should be edited for your own configure.