Skip to content

[paused development] Large scale concurrent chemical search using RDKit cartridge, Oat++ and native Postgres & C++ features.

License

Notifications You must be signed in to change notification settings

MichelML/chempp

Repository files navigation

Paused Development

Contributors Forks Stargazers Issues Apache License LinkedIn


Chempp - Project Logo

[Large scale] concurrent chemical search engine using RDKit cartridge, Oat++ and native Postgres & C++ features.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Installation
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements

About The Project

chempp [kem-pee-pee], is a large scale concurrent chemical search engine using RDKit cartridge, Oat++ and native Postgres & C++ features.

Built With

Installation

Prerequisites

Install steps

Clone the project

git clone https://github.com/MichelML/chempp.git && \
cd chempp

Then, start the db and fill it with molecules. You have two options:

Option 1 - Small Database of 1000 molecules

docker-compose up -d db && \
docker-compose exec db bash -c "SMALLDB=1 /utility/populate_db.sh"

Option 2 - Large database of ~3M compounds

docker-compose up -d db && \
docker-compose exec db bash -c "/utility/populate_db.sh"

Warning: This command will take a while because it inserts ~3M rows in the db and creates indexes to perform efficient searches, a rough estimate being between 15 minutes and an hour.

Lastly, start the chempp service:

docker-compose up service

Once these commands are ran, you are ready to test the endpoints at http://localhost:8000/swagger/ui .

Usage

See usage through Swagger demo here https://drive.google.com/file/d/1FKh3-N4KWvVEz7NPFmMDALWu-BzYbaHP/view?usp=sharing .

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Make sure to format your code properly with make format.

License

Distributed under the Apache-2.0 License. See LICENSE for more information.

Contact

Michel ML - @michelml - [email protected]

Project Link: https://github.com/michelml/chempp

Acknowledgements

Thank you to all contributors of libraries and tools used in this project.

About

[paused development] Large scale concurrent chemical search using RDKit cartridge, Oat++ and native Postgres & C++ features.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published