Some caveats about that demo:
- If you want to use the wrappers yourself, please download a copy from the URL instead of linking to it.
- I am most certainly not a web developer, so the page is pretty ugly and the underlying code will probably make an actual web developer's eyes burn. Pull requests are very welcome! Here's the source for that page: https://github.com/rdkit/rdkit/tree/Release_2019_09_1/Code/MinimalLib/demo
- Because we're using WebAssembly this only works in modern browsers. I can use it on my phone though... that's awesome!
Here are some highlights of what you can do with the demo.
Type in SMILES and see a drawing of the corresponding molecule.
Note that the canonical SMILES (under the drawing) and computed values update as I type:
Do SMARTS-based substructure searches and see the matching atoms and bonds highlighted on the molecule:
If you want to see everything available in the JS wrappers, you can open the JS console ("Developer tools" in Chrome) to see the functions that are available and try them out:
As I mentioned above, there's not a huge amount of functionality exposed, but I think that what's there is already pretty useful. Since we are trying to keep the interface reasonably minimal (and supportable), we're not going to put everything in there, but if you have suggestions for improvements or additions, please file an issue or just let me know.
I just love that I can now use the RDKit on my phone. :-)
About the technologyFor people who care about such things, here's a very short description of how this works.
If you want to build the wrappers yourself, the easiest way to do so is to use the Dockerfile that is part of the RDKit distribution: https://github.com/rdkit/rdkit/blob/Release_2019_09_1/Code/MinimalLib/docker/Dockerfile
Getting emscripten and all the other dependencies installed and configured is not 100% trivial and this takes of all that for you.