Go to file
Navan Chauhan 3f0346b2bb removed upload folder from config.ini 2020-09-10 12:39:26 +05:30
.github/workflows fixed typo 🤦‍♂️ 2020-07-07 11:43:40 +05:30
app removed upload folder from config.ini 2020-09-10 12:39:26 +05:30
lstm_chem added alpha model 2020-08-01 15:34:22 +05:30
misc added curie systemd file 2020-09-06 13:11:12 +05:30
tests updating test mail 2020-08-25 18:40:50 +05:30
.deepsource.toml Add .deepsource.toml 2020-06-25 12:53:58 +00:00
.gitignore added to gitignore 2020-09-08 15:13:03 +05:30
Aptfile linked directly to deb 2020-07-31 19:40:09 +05:30
Procfile Added v1 API 2020-07-12 21:37:37 +05:30
README.md updated Readme to tell about config.ini 2020-09-10 12:25:30 +05:30
api.py bumped runtime 2020-09-02 17:49:07 +05:30
config.ini removed upload folder from config.ini 2020-09-10 12:39:26 +05:30
requirements.txt added email validator to 2020-09-08 20:03:22 +05:30
run.py make it better 2020-06-24 23:39:05 +05:30
runtime.txt bumped runtime 2020-09-02 17:49:07 +05:30

README.md

Curie-Web

Backend Tessts Database Tests DeepSource

Tested on:

  • macOS 10.15 (Catalina)
  • Ubuntu 20.04 - Raspberry Pi 4

Do Not Forget To Change DB Host configuration!

1. Installing Dependencies

1.1 Docker

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)

1.2 PLIP

Install from pharmai/plip.

In case you have problems installing it, install it from the forked repo navanchauhan/plip

1.3 PyMOL with Python Bindings (version >= 2.0)

  • macOS users can use Homebrew to install it via brew install pymol

  • Users using apt can install it via sudo apt install pymol

1.4 Open-Babel (version >= 3.0)

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

2. Changing the Configuration

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 = navanchauhan@gmail.com
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

Database

Name Description
HOST MySQL Database Host
PORT MySQL Database Port
USER Username
PASSWORD Password
NAME MySQL Database Name

SMTP

Name Description
SERVER SMTP Server
PORT SMTP Port
EMAIL Email
PASSWORD Password

LOGS

Name Description
LOG Log
SAVE_LOGS SAVE LOGS

FILES

Name Description
UPLOAD_FOLDER Folder to store files
LOG_FOLDER Folder to store logs

EXECUTION

Name Description
INSTANT Whether to run the docking jobs instantly (True or False)

FEATURES

Name Description
LSTM Enable LSTM Generator (True or False)

3. Adding AR Model Support

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

4. Running

Without FastAPI

gunicorn api:app -b "0.0.0.0:7589"

With FastAPI

gunicorn api:app -k uvicorn.workers.UvicornWorker -b "0.0.0.0:7589"

SystemD

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