Skip to content
Go to file


Failed to load latest commit information.
Latest commit message
Commit time

Awesome Python Chemistry Awesome

License: CC BY 4.0

A curated list of awesome Python frameworks, libraries, software and resources related to Chemistry.

Inspired by awesome-python.

Table of contents

General Chemistry

Packages and tools for general chemistry.

  • batchcalculator - A GUI app based on wxPython for calculating the correct amount of reactants (batch) for a particular composition given by the molar ratio of its components.
  • cctbx - The Computational Crystallography Toolbox.
  • chemlib - A robust and easy-to-use package that solves a variety of chemistry problems.
  • chempy - ChemPy is a package useful for chemistry (mainly physical/inorganic/analytical chemistry).
  • GoodVibes - A Python program to compute quasi-harmonic thermochemical data from Gaussian frequency calculations.
  • ionize - Calculates the properties of individual ionic species in aqueous solution, as well as aqueous solutions containing arbitrary sets of ions.
  • mendeleev - A package that provides a python API for accessing various properties of elements from the periodic table of elements.
  • Open Babel - A chemical toolbox designed to speak the many languages of chemical data.
  • periodictable - This package provides a periodic table of the elements with support for mass, density and xray/neutron scattering information.
  • pybel - Pybel provides convenience functions and classes that make it simpler to use the Open Babel libraries from Python.
  • pycroscopy - Scientific analysis of nanoscale materials imaging data.
  • pyEQL - A set of tools for conventional calculations involving solutions (mixtures) and electrolytes.
  • pyiron - pyiron - an integrated development environment (IDE) for computational materials science.
  • pymatgen - Python Materials Genomics is a robust, open-source library for materials analysis.
  • symfit - a curve-fitting library ideally suited to chemistry problems, including fitting experimental kinetics data.
  • symmetry - Symmetry is a library for materials symmetry analysis.
  • stk - A library for building, manipulating, analyzing and automatic design of molecules, including a genetic algorithm.


Packages for atomistic simulations and computational chemistry.

  • amp - Is an open-source package designed to easily bring machine-learning to atomistic calculations.
  • Atomic Silumation Environment (ASE) - Is a set of tools and modules for setting up, manipulating, running, visualizing and analyzing atomistic simulations.
  • basis_set_exchange - A library containing basis sets for use in quantum chemistry calculations. In addition, this library has functionality for manipulation of basis set data.
  • CACTVS - Cactvs is a universal, scriptable cheminformatics toolkit, with a large collection of modules for property computation, chemistry data file I/O and other tasks.
  • ccdc - An API for the Cambridge Structural Database System.
  • cclib - A library for parsing output files various quantum chemical programs.
  • cinfony - A common API to several cheminformatics toolkits (Open Babel, RDKit, the CDK, Indigo, JChem, OPSIN and cheminformatics webservices).
  • chainer-chemistry - A Library for Deep Learning in Biology and Chemistry.
  • chemlab - Is a library that can help the user with chemistry-relevant calculations.
  • chemml - A machine learning and informatics program suite for the analysis, mining, and modeling of chemical and materials data.
  • deepchem - Deep-learning models for Drug Discovery and Quantum Chemistry.
  • emmet - A package to 'build' collections of materials properties from the output of computational materials calculations.
  • fromage - The "FRamewOrk for Molecular AGgregate Excitations" enables localised QM/QM' excited state calculations in a solid state environment.
  • GPAW - Is a density-functional theory (DFT) Python code based on the projector-augmented wave (PAW) method and the atomic simulation environment (ASE).
  • horton - Helpful Open-source Research TOol for N-fermion system, a quantum-chemistry program that can perform computations involving model Hamiltonians.
  • Indigo - Universal cheminformatics libraries, utilities and database search tools.
  • MAML - Aims to provide useful high-level interfaces that make ML for materials science as easy as possible.
  • mathchem - Is a free open source package for calculating topological indices and other invariants of molecular graphs.
  • MDAnalysis - Is an object-oriented library to analyze trajectories from molecular dynamics (MD) simulations in many popular formats.
  • MDTraj - Package for manipulating molecular dynamics trajectories with support for multiple formats.
  • MMTK - The Molecular Modeling Toolkit is an Open Source program library for molecular simulation applications.
  • MolMod - A library with many components that are useful to write molecular modeling programs.
  • OPEM - Open source PEM (Proton Exchange Membrane) fuel cell simulation tool.
  • pGrAdd - A library for estimating thermochemical properties of molecules and adsorbates using group additivity.
  • phonopy - An open source package for phonon calculations at harmonic and quasi-harmonic levels.
  • PLAMS - Python Library for Automating Molecular Simulation: input preparation, job execution, file management, output processing and building data workflows.
  • pMuTT - A library for ab-initio thermodynamic and kinetic parameter estimation.
  • PorePy - A Simulation Tool for Fractured and Deformable Porous Media.
  • ProDy - An open source package for protein structural dynamics analysis with a flexible and responsive API.
  • Psi4 - A hybrid Python/C++ open-source package for quantum chemistry.
  • pyEMMA - Library for the estimation, validation and analysis Markov models of molecular kinetics and other kinetic and thermodynamic models from molecular dynamics data.
  • pygauss - An interactive tool for supporting the life cycle of a computational molecular chemistry investigations.
  • PyQuante - Is an open-source suite of programs for developing quantum chemistry methods
  • pysic - A calculator incorporating various empirical pair and many-body potentials.
  • Pyscf - A quantum chemistry package written in Python.
  • pyvib2 - A program for analyzing vibrational motion and vibrational spectra.
  • RDKit - Open-Source Cheminformatics Software.
  • ReNView - A program to visualize reaction networks.
  • stk - A library for building, manipulating, analyzing and automatic design of molecules.
  • QUIP - A collection of software tools to carry out molecular dynamics simulations.
  • tsase - The library which depends on ASE to tackle transition state calculations.

Molecular Visualization

Packages for viewing molecular structures.

  • ase-gui - The graphical user-interface allows users to visualize, manipulate, and render molecular systems and atoms objects.
  • chemview - An interactive molecular viewer designed for the IPython notebook.
  • imolecule - An embeddable webGL molecule viewer and file format converter.
  • nglview - A Jupyter widget to interactively view molecular structures and trajectories.
  • PyMOL - A user-sponsored molecular visualization system on an open-source foundation, maintained and distributed by Schrödinger.
  • pymoldyn - A viewer for atomic clusters, crystalline and amorphous materials in a unit cell corresponding to one of the seven 3D Bravais lattices.
  • sumo - A toolkit for plotting and analysis of ab initio solid-state calculation data.
  • surfinpy - A library for the analysis, plotting and visualisation of ab initio surface calculation data.

Database Wrappers

Providing a python layer for accessing chemical databases

  • ChemSpiPy - ChemSpider wrapper, that allows chemical searches, chemical file downloads, depiction and retrieval of chemical properties.
  • CIRpy - An interface for the Chemical Identifier Resolver (CIR) by the CADD Group at the NCI/NIH.
  • pubchempy - PubChemPy provides a way to interact with PubChem in Python.

See Also

You can’t perform that action at this time.