Tested on:
- macOS 10.15 (Catalina)
- Ubuntu 20.04 - Raspberry Pi 4
You can quickly get started and test Curie-Web without needing to manage dependencies by using the docker-compose
image. This has all features except AR/3D Model support. Otherwise, it is production ready.
git clone https://github.com/navanchauhan/Curie-Web
cd Curie-Web
docker-compose up
Do not forget to edit config.ini
for the email section. Do not change the database settings for running it via docker.
- This does not support generating a 3D Model and thus, AR viewer will not work on the Job Status page.
Once you have installed docker, make sure to pull the following images (Otherwise, these will automatically get downloaded when you run the web-server)
- navanchauhan/curie-cli (amd64/aarch64)
- navanchauhan/usd-from-gltf (aarch64)
- leon/usd-from-gltf (amd64)
-
Install from pharmai/plip.
-
In case you have problems installing it, install it from the forked repo navanchauhan/plip
-
macOS users can use Homebrew to install it via
brew install pymol
-
Users using apt can install it via
sudo apt install pymol
-
macOS users can use Homebrew to install it via
brew install open-babel
-
Users using apt can install it via
sudo apt install openbabel python3-openbabel
- Install from package manager or follow steps at http://vina.scripps.edu/download.html
-
TeX is required for Pandoc's funcitonality for converting markdown to PDFs
-
macOS users can use Homebrew to first install mactex
brew cask install mactex-no-gui
and then the rest bybrew install pandoc imagemagick
-
Users using apt can install via
sudo apt-get install pandoc texlive-xetex imagemagick
Please ensure you install Tensorflow 2.x.
If tensorflow is not properly installed, it will automatically disable the LSTM Module.
Replace the values in config.ini
Default Values:
[DATABASE]
HOST = navanspi.duckdns.org
PORT = 3306
USER = curieweb
PASSWORD = curie-web-russian-54
NAME = curie
[SMTP]
SERVER = smtp.gmail.com
PORT = 587
EMAIL = [email protected]
PASSWORD = okrs shoc ahtk idui
[LOGS]
LOG = True
SAVE_LOGS = False
[FILES]
UPLOAD_FOLDER = ./app/static/uploads
LOG_FOLDER = ./app/logs/
[EXECUTION]
INSTANT = True
[FEATURES]
LSTM = False
Name | Description |
---|---|
HOST | MySQL Database Host |
PORT | MySQL Database Port |
USER | Username |
PASSWORD | Password |
NAME | MySQL Database Name |
Name | Description |
---|---|
SERVER | SMTP Server |
PORT | SMTP Port |
PASSWORD | Password |
Name | Description |
---|---|
LOG | Log |
SAVE_LOGS | SAVE LOGS |
Name | Description |
---|---|
UPLOAD_FOLDER | Folder to store files |
LOG_FOLDER | Folder to store logs |
Name | Description |
---|---|
INSTANT | Whether to run the docking jobs instantly (True or False) |
Name | Description |
---|---|
LSTM | Enable LSTM Generator (True or False) |
Make sure you have PyMOL 2.0 or higher
Either download the precompiled binaries from COLLADA2GLTF or compile it on your own
Once you have the COLLADA2GLTF-bin
file, copy the file:
cp COLLADA2GLTF-bin /usr/local/bin/collada2gltf
You will first need to create a database and grant all priviliges to a user. Make sure you have correctly configured the config.ini
file.
After tha simply run the following commands. This will create the table(s) and check if the backend is working or not.
cd tests
python3 dbTestFiller.py
python3 backendTest.py
python3 removeSample.py
gunicorn app:app -b "0.0.0.0:7589"
gunicorn api:app -k uvicorn.workers.UvicornWorker -b "0.0.0.0:7589"
There is a sample systemd file in the misc folder
-
Configure the file and then copy it to
/etc/systemd/system
-
You can start the server by running
sudo systemctl start curie
-
To enable the server to start on boot run
sudo systemctl enable curie
Currently the base model has been trained on 1.5 million compounds and took ~4 hours to train on Google Colab's GPU runtime.
Information to be added soon