diff options
Diffstat (limited to 'docs/feed.rss')
-rw-r--r-- | docs/feed.rss | 103 |
1 files changed, 101 insertions, 2 deletions
diff --git a/docs/feed.rss b/docs/feed.rss index e959592..06f953c 100644 --- a/docs/feed.rss +++ b/docs/feed.rss @@ -4,8 +4,8 @@ <title>Navan's Archive</title> <description>Rare Tips, Tricks and Posts</description> <link>https://web.navan.dev/</link><language>en</language> - <lastBuildDate>Fri, 25 Jun 2021 17:37:47 -0000</lastBuildDate> - <pubDate>Fri, 25 Jun 2021 17:37:47 -0000</pubDate> + <lastBuildDate>Sat, 26 Jun 2021 18:27:33 -0000</lastBuildDate> + <pubDate>Sat, 26 Jun 2021 18:27:33 -0000</pubDate> <ttl>250</ttl> <atom:link href="https://web.navan.dev/feed.rss" rel="self" type="application/rss+xml"/> @@ -3330,6 +3330,105 @@ new Dics({ <item> <guid isPermaLink="true"> + https://web.navan.dev/posts/2021-06-26-Cheminformatics-On-The-Web-2021.html + </guid> + <title> + Cheminformatics on the Web (2021) + </title> + <description> + Summarising Cheminformatics on the web in 2021. + </description> + <link>https://web.navan.dev/posts/2021-06-26-Cheminformatics-On-The-Web-2021.html</link> + <pubDate>Sat, 26 Jun 2021 13:04:00 -0000</pubDate> + <content:encoded><![CDATA[<h1>Cheminformatics on the Web (2021)</h1> + +<p>Here, I have compiled a list of some tools and possible solutions. +The web is a nice platform, it is available anywhere and just requires an internet connection. +I, personally like static websites which don't require a server side application and can be hosted on platforms like GitHub Pages. +Or, just open the HTML file and run it in your browser. +No data is required to be sent to any server and your device's computational power is used. +Even our phones have a lot of computational power now, which allows the user to run tasks on the go without needing to worry about managing dependencies. +WebAssembly (Wasm) has made running code written for other platfroms on the web relativevly easier. +Combine Wasm with some pure JavaScript libraries, and you get a platform to quickly amp up your speed in some common tasks.</p> + +<h2>RDKit</h2> + +<p>RDKit bundles a minimal JavaScript Wrapper in their core RDKit suite. +This is perfect for generating 2D Figures (HTML5 Canva/SVGs), Cannonical SMILES, Descriptors e.t.c</p> + +<h3>Substructure Matching</h3> + +<p>This can be used to flag undesirable functional groups in a given compound. +Create a simple key:value pair of name:SMARTS and use it to highlight substructure matches. +Thus, something like PostEra's Medicinal Chemistry Alert can be done with RDKit-JS alone.</p> + +<p><img src="/assets/posts/cheminformatics-web/postera-demo.png" alt="PostEra Demo" /></p> + +<h3>Computing Properties</h3> + +<p>This is useful to calculate basic properties of a given compound.</p> + +<p><img src="/assets/posts/cheminformatics-web/rdkit-demo.png" alt="RDKit-JS Demo" /></p> + +<h2>Webina - Molecular Docking</h2> + +<p>Webina is a JavaScript/Wasm library that runs AutoDock Vina, which can enable you to run Molecular Docking straight in the browser itself.</p> + +<p><img src="/assets/posts/cheminformatics-web/webina-demo.png" alt="Webina Demo" /></p> + +<p>Obviously, it takes a few hits in the time to complete the docking because the code is transpiled from C++ to Wasm. +But, the only major drawback (for now) is that it uses SharedArrayBuffer. +Due to Spectre, this feature was disabled on all browsers. +Currently, only Chromium-based and Firefox browsers have reimplemented and renabled it. +Hopefully, soon this will be again supported by all major browsers.</p> + +<h2>Machine Learning</h2> + +<p>Frameworks have now evolved enough to allow exporting models to be able to run them through JavaScript/Wasm backend. +An example task can be <strong>NER</strong> or Named-entity Recognition. +It can be used to extract compounds or diseases from a large blob of text and then matched with external refferences. +Another example is target-prediction right in the browser: <a rel="noopener" target="_blank" href="http://chembl.blogspot.com/2021/03/target-predictions-in-browser-with.html">CHEMBL - Target Prediction in Browser</a></p> + +<p>CHEMBL Group is first training the model using PyTorch (A Python ML Library), then converting it to the ONNX runtime. +A model like this can be directly implemented in Tensorflow, and then exported to be able to run with TensorFlow.js</p> + +<h2>Cheminfo-to-web</h2> + +<p>The project aims to port chemoinformatics libraries into JavaScript via Emscripten. +They have ported InChI, Indigo, OpenBabel, and OpenMD</p> + +<h3>Kekule.js</h3> + +<p>It is written by @partridgejiang, who is behind the Cheminfo-to-web project</p> + +<blockquote> + <p>It is molecule-centric, focusing on providing the ability to represent, draw, edit, compare and search molecule structures on web browsers.</p> +</blockquote> + +<h2>Browser Extensions</h2> + +<p>The previous machine learning examples can be packaged as browser-extensions to perform tasks on the article you are reading. +With iOS 15 bringing WebExtensions to iOS/iPadOS, the same browser extension source code can be now used on Desktop and Mobile Phones. +You can quickly create an extenison to convert PDB codes into links to RCSB, highlight SMILES, highlight output of NER models, e.t.c</p> + +<h2>Conclusion</h2> + +<p>I have not even touched all the bases of cheminformatics for the web here. +There is still a lot more to unpack. +Hopefully, this encourages you to explore the world of cheminformatics on the web.</p> + +<h2>Further Reading</h2> + +<p><a rel="noopener" target="_blank" href="https://blueobelisk.github.io/greasemonkey.html">Blueobelisk Userscripts</a></p> + +<p><a rel="noopener" target="_blank" href="https://depth-first.com/articles/2019/05/01/javascript-for-cheminformatics-part-2/">JavaScript for Cheminformatics</a></p> + +<p><a rel="noopener" target="_blank" href="https://unpkg.com/@rdkit/rdkit@2021.3.3/Code/MinimalLib/dist/GettingStartedInJS.html">Getting Started with RDKit-JS</a></p> +]]></content:encoded> + </item> + + <item> + <guid isPermaLink="true"> https://web.navan.dev/posts/2020-06-01-Speeding-Up-Molecular-Docking-Workflow-AutoDock-Vina-and-PyMOL.html </guid> <title> |