Releases: The-Schultz-Lab/plotlyMol
Releases · The-Schultz-Lab/plotlyMol
v0.2.1 — Dash migration, documentation cleanup, and PyPI fixes
What's changed
GUI migration
- Migrated from Streamlit to Dash — launch the app with
python examples/gui_app.py - Updated
guioptional dependency:dash>=2.14.0+dash-bootstrap-components>=1.5.0 - Updated
launch_app.batandstop_app.batfor Dash process management
PyPI / packaging fixes
- Fixed logo not rendering on PyPI (relative path → absolute raw GitHub URL)
- Both authors (Jonathan Schultz and Benjamin Lear) now correctly listed on PyPI
- Added
pip install plotlymolas the primary installation method in README
Documentation cleanup
- Removed all remaining Streamlit references across docs, requirements, and environment files
- Fixed Python minimum version in docs: 3.8 → 3.9
- Updated version number in
docs/about.md(0.1.0 → 0.2.0) including BibTeX citation - Updated author contact to The-Schultz-Lab; linked Benjamin Lear's GitHub profile
- Replaced broken
docs/ROADMAP.mdanddocs/PERFORMANCE_TESTING_GUIDE.mdlinks - Bumped
blackminimum from>=23.0.0to>=24.3.0inrequirements.txt - Fixed markdown lint warnings across README and docs
v0.2.0 — Initial Public Release
plotlyMol v0.2.0
First public release of plotlyMol — interactive 3D molecular visualization built on Plotly and RDKit.
Features
- Multiple visualization modes: ball-and-stick, stick, ball, and van der Waals (VDW)
- Flexible input formats: SMILES strings, XYZ, MOL/SDF, PDB, and Gaussian cube files
- Automatic 3D coordinate generation from SMILES via RDKit
- Orbital visualization: isosurface rendering from quantum chemistry cube files
- Bond order rendering: visual differentiation of single, double, triple, and aromatic bonds
- Interactive Dash GUI: PubChem name search, lighting presets, molecule info panel
- Export: interactive HTML and static PNG via kaleido
- CI/CD: automated testing, linting, type checking, and PyPI publish via GitHub Actions
Installation
pip install plotlymolQuick Start
from plotlymol3d import draw_3D_rep
fig = draw_3D_rep(smiles="CCO", mode="ball+stick")
fig.show()