iCn3D: From Web-Based 3D Viewer to Structural Analysis Tool in Batch Mode

Jiyao Wang,Philippe Youkharibache,Aron Marchler-Bauer,Christopher Lanczycki,Dachuan Zhang,Shennan Lu,Thomas Madej,Gabriele H Marchler,Tiejun Cheng,Li Chuin Chong,Sarah Zhao,Kevin Yang,Jack Lin,Zhiyu Cheng,Rachel Dunn,Sridhar Acharya Malkaram,Chin-Hsien Tai,David Enoma,Ben Busby,Nicholas L Johnson,Francesco Tabaro,Guangfeng Song,Yuchen Ge
DOI: https://doi.org/10.3389/fmolb.2022.831740
2022-02-17
Abstract:iCn3D was initially developed as a web-based 3D molecular viewer. It then evolved from visualization into a full-featured interactive structural analysis software. It became a collaborative research instrument through the sharing of permanent, shortened URLs that encapsulate not only annotated visual molecular scenes, but also all underlying data and analysis scripts in a FAIR manner. More recently, with the growth of structural databases, the need to analyze large structural datasets systematically led us to use Python scripts and convert the code to be used in Node. js scripts. We showed a few examples of Python scripts at https://github.com/ncbi/icn3d/tree/master/icn3dpython to export secondary structures or PNG images from iCn3D. Users just need to replace the URL in the Python scripts to export other annotations from iCn3D. Furthermore, any interactive iCn3D feature can be converted into a Node. js script to be run in batch mode, enabling an interactive analysis performed on one or a handful of protein complexes to be scaled up to analysis features of large ensembles of structures. Currently available Node. js analysis scripts examples are available at https://github.com/ncbi/icn3d/tree/master/icn3dnode. This development will enable ensemble analyses on growing structural databases such as AlphaFold or RoseTTAFold on one hand and Electron Microscopy on the other. In this paper, we also review new features such as DelPhi electrostatic potential, 3D view of mutations, alignment of multiple chains, assembly of multiple structures by realignment, dynamic symmetry calculation, 2D cartoons at different levels, interactive contact maps, and use of iCn3D in Jupyter Notebook as described at https://pypi.org/project/icn3dpy.
What problem does this paper attempt to address?