This is a webservice built using FastAPI.
Allows to:
To be usable on Heroku or Dokku, which use PORT
environmental variables, you need to either create this environmental variable or put it into an .env
file. For local development, the run_docker.sh
script uses 8091
.
./build_docker # builds the docker image
./run_docker # starts the service
For production, you may want to use Docker compose
docker-compose up
You have the option to customize the behavior of the app using environment variables:
IMAGINARY_FREQ_THRESHOLD
: sets the maximum energy in cm-1 for imaginary frequency (if this threshold is exceeded, the output will contain a warning)MAX_ATOMS_XTB
/MAX_ATOMS_FF
: if the input contains more than this number of atoms, an error is thrownTIMEOUT
: If the request takes longer than this time (in seconds) a TimeOut
error is raisedCACHEDIR
: Sets the directory for the diskcache. It will be mounted by the docker container.This webservices heavily relies on xtb and ase. If you find this service useful and mention it in a publication, please also cite ase and xtb:
It also uses RDKit and the conformer search proposed by Riniker/Landrum:
You find docs on http://127.0.0.1:$PORT/v1/docs.