
Introduction¶
Crystal Toolkit is a web app framework from the Materials Project allowing Python developers to easily make an interactive web app to display materials science information. As a showcase of the framework’s capabilities, the Crystal Toolkit app allows you to import, view, analyze and transform crystal structures and molecules.
Crystal Toolkit App¶
You can visit the current Crystal Toolkit web app here.
Warning
While the web app is online, the Crystal Toolkit source code itself is not intended for public use at this time. The current master branch may not work, and documentation may be incomplete and/or misleading. We’re working hard to reach release status, please check back soon.
Crystal Toolkit Framework¶
Crystal Toolkit is designed as a modular, object-orientated suite of UI components built upon the Dash framework by Plotly. The main Crystal Toolkit web app is just one example of using these components.
Installation¶
You can pip install crystal-toolkit
.
For Jupyter integration, please see the additional installation steps.
Running the App Locally¶
If the web app is offline or undergoing maintenance, you can also run the web app locally using Docker. After you’ve installed Docker, run the following:
docker container run -p 8000:8000 -e PMG_MAPI_KEY=YOUR_API_KEY_HERE materialsproject/crystal_toolkit
The app should then be available at http://localhost:8000.
Make sure to set your PMG_MAPI_KEY
appropriately.
If you need a Materials Project API key, please get a free account on
Materials Project and access your dashboard.
Development Team¶
The Crystal Toolkit Development Team includes:
Matthew Horton, lead
François Chabbey for React components
Jimmy Shen contributed pythreejs support, surface plotting, initial arrows/axes support, and various bug fixes
Joey Montoya contributed Pourbaix component
Shyam Dwaraknath for planned contributions for ellipsoid support and architectural design
Donny Winston, assisted by Tyler Huntington, for helping embed Crystal Toolkit in a Django app
Matt McDermott contributed phase diagram, X-ray Diffraction, X-ray Absorption Spectrum components
Jason Munro contributed band structure component
Stephen Weitzner contributed POV-Ray integration (in progress)
Richard Tran for planned contribution of Wulff shape component
New contributors are welcome, please see our Code of Conduct.