# MP Community Software Ecosystem

### Overview

Many individuals both affiliated and unaffiliated with MP have published software that directly builds upon core MP resources. This page seeks to highlight such efforts so their hard work can be recognized and so you can learn about new tools that might benefit your own research.

{% hint style="info" %}
Refer to the [Materials Project-hosted codes](/community/getting-involved/contributor-guide.md#official-materials-project-codes) section in the Contributor Guide for the main packages that are directly supported by the Materials Project. A full list can be found on the [`materialsproject`](https://github.com/materialsproject) GitHub organization page.
{% endhint %}

### The MP Community Software Ecosystem

{% hint style="info" %}
This list is not exhaustive. If you would like to make a suggestion to add here, please contact **TODO**.\
\
All listed programs must use one of the primary [Materials Project-hosted codes](/community/getting-involved/contributor-guide.md#official-materials-project-codes) as a core dependency in a non-artificial way and be actively maintained (defined here as a commit within the last year).
{% endhint %}

* [AMSET](https://github.com/hackingmaterials/amset): AMSET is a package for calculating electronic transport properties from first-principles calculations.
* [automatminer](https://github.com/hackingmaterials/automatminer): An automatic engine for predicting materials properties.
* [CHGNet](https://github.com/CederGroupHub/chgnet): Pretrained universal neural network potential for charge-informed atomistic modeling
* [Doped](https://github.com/SMTG-Bham/doped): doped is a python package for setting up, parsing and analysing ab-initio defect calculations.
* [IFermi](https://github.com/fermisurfaces/IFermi): Fermi surface generation, analysis and visualisation.
* [LobsterPy](https://github.com/JaGeo/LobsterPy): Package to perform automatic bonding analysis with the program Lobster in the field of computational materials science and quantum chemistry
* [matbench-discovery](https://github.com/janosh/matbench-discovery): An evaluation framework for machine learning models simulating high-throughput materials discovery.
* [matcalc](https://github.com/materialsvirtuallab/matcalc): A python library for calculating materials properties
* [matgl](https://github.com/materialsvirtuallab/matgl): Graph deep learning library for materials
* [matminer](https://github.com/hackingmaterials/matminer): Data mining for materials science
* [matsciml](https://github.com/IntelLabs/matsciml): Open MatSci ML Toolkit is a framework for prototyping and scaling out deep learning models for materials discovery supporting widely used materials science datasets, and built on top of PyTorch Lightning, the Deep Graph Library, and PyTorch Geometric.
* [mispr](https://github.com/molmd/mispr): A software for automating materials science computations
* [NanoParticleTools](https://github.com/BlauGroup/NanoParticleTools): NanoParticleTools tools is a python module that facilitates monte carlo simulation of Upconverting Nanoparticles (UCNP) using [RNMC](https://github.com/BlauGroup/RNMC)
* [pyEQL](https://github.com/KingsburyLab/pyEQL): A Python library for solution chemistry
* [pymatviz](https://github.com/janosh/pymatviz): A toolkit for visualizations in materials informatics.
* [PyTASER](https://github.com/WMD-group/PyTASER): Python package to simulate differential absorption of crystals from first principles
* [PyXtal](https://github.com/qzhu2017/PyXtal): A code to generate atomic structure with symmetry
* [quacc](https://github.com/Quantum-Accelerators/quacc): quacc is a flexible platform for computational materials science and quantum chemistry that is built for the big data era.
* [reaction-network](https://github.com/materialsproject/reaction-network): Reaction Network is a Python package for predicting likely inorganic chemical reaction pathways using graph theoretical methods.
* [robocrystallographer](https://github.com/hackingmaterials/robocrystallographer): Automatic generation of crystal structure descriptions.
* [ShakeNBreak](https://github.com/SMTG-Bham/ShakeNBreak): Defect structure-searching employing chemically-guided bond distortions
* [SMACT](https://github.com/WMD-group/SMACT): Python package to aid materials design and informatics
* [smol](https://github.com/CederGroupHub/smol): Statistical Mechanics on Lattices
* [sumo](https://github.com/SMTG-Bham/sumo): Heavyweight plotting tools for ab initio calculations
* [surfaxe](https://github.com/SMTG-Bham/surfaxe): Dealing with slabs for first principles calculations of surfaces
* [WFacer](https://github.com/CederGroupHub/WFacer): Modulated automation of cluster expansion based on atomate2 and Jobflow

  \\


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.materialsproject.org/community/getting-involved/mp-community-software-ecosystem.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
