Skip to main content

MoloM

A standalone, Python-based molecule viewer/builder skeleton in the spirit of Avogadro: an OpenGL ball-and-stick viewport with the same universal structure import cascade as ORCA Workbench.

Features (skeleton scope)

  • Import: native multi-frame .xyz (with JSON-comment metadata), SDF/MOL/MOL2/PDB/CIF/... via OpenBabel (timeout-guarded subprocess) with an RDKit fallback and a last-resort heuristic Label x y z salvage; SMILES → 3D (RDKit ETKDGv3 + MMFF, OpenBabel UFF fallback); paste-XYZ detection.
  • Rendering: instanced-OpenGL ball-and-stick using Avogadro 2's element data (Alvarez VdW radii, Pyykkö covalent radii, Jmol-derived colours) and its exact sizing rules; stick / VdW / wireframe presets.
  • Bond perception: Avogadro's perceiveBondsSimple rule (covalent radius sum + 0.45 Å tolerance, 0.32 Å minimum, noble gases and H-H excluded).
  • Selection & measurement: click / Ctrl+click; 2, 3, 4 selected atoms show distance, angle, dihedral in the status bar.
  • Trajectory playback: frame slider + play/pause for multi-frame files.
  • Editing (stubs): add/delete atoms, change element, add/remove/cycle bonds — wired UI dispatching into implemented, tested core functions.

Install / run

pip install -e .          # core: numpy, PySide6, PyOpenGL
pip install -e .[chem]    # + rdkit, openbabel-wheel (SMILES + non-xyz formats)
molom [file.xyz]
python -m molom --selftest   # headless check, no GL needed

Architecture

molom/core/ is UI-free and GL-free (unit-testable offline); molom/ui/ is a thin PySide6/OpenGL shell over it. See CLAUDE.md.

Element data transcoded from Avogadro 2 (BSD 3-Clause) — see THIRD_PARTY_NOTICES.md.

Metadata

Release files for molom 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for molom 0.1.0
File Size Uploaded
molom-0.1.0.tar.gz 159.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for molom 0.1.0
File Interpreter ABI Platform
molom-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 312.2 kB

Release files / molom-0.1.0.tar.gz

Download URL molom-0.1.0.tar.gz
Size 159.6 kB
Tags Source
SHA-256 checksum
How to use checksums
35691738f52782f0bc329e5b344c7669821eb10c688d1d0aec703ecb6e3b8dd8
BLAKE2b-256 checksum
How to use checksums
e6199c8af486aa695740fad45c7c34a6ed85e95ed174643306827be562f3596e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.0

Release files / molom-0.1.0-py3-none-any.whl

Download URL molom-0.1.0-py3-none-any.whl
Size 152.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8d734d05893b25794c22673a56b9304b7f3c835e95c86f00d275c9db79eb1050
BLAKE2b-256 checksum
How to use checksums
296b21aab836dca4da933417e167ef3eeb9324011a19182d60300b780404c1e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.0

Release history Release notifications | RSS feed

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page