Skip to main content

Terminal-based 3D molecular viewer

Project description

MolTUI

MolTUI is a terminal molecular viewer for the XYZ, Zmat, Molden, Gaussian Cube and .fchk, Orca .gbw and .hess, and TrexIO file format designed for quick inspection of geometries, trajectories, orbitals and normal modes directly in the terminal using Unicode characters. Ideal for remote SSH sessions and lightweight analyses.

benzene

Installation

pip install moltui
# or
uv tool install moltui

Usage

moltui <file>

Features

MolTUI is organized in a series of modes that can be cycled using the m (forward) and M (backward) keys. Each mode opens a respective sidebar which can be toggled on and off with S. The modes consist of molecular orbitals, normal modes and geometry and availability depends on the file format that was opened.

Visualize Orbitals

  • The rendering of orbitals can be toggled via o.
  • Molden and .gbw files can contain multiple molecular orbitals. Cycle through MOs with next and prev.
image

Analyze Geometry

  • Bond lengths, angles and dihedrals can be viewed using the geometry key which opens a sidebar. Navigate between tabs via <tab>.
  • The quantity is highlighted in yellow on the molecule.
  • Sort the quantity in increasing magnitude via s.
  • Atom indices can be toggled via #.
image

Animations

Trajectories

Trajectories can be provided in the multi-XYZ file format (essentially multiple XYZ files concatenated together). Toggle a looping animation of the trajectory using <space> and cycle individual frames using [ and ]. The geometry sidebar values updates live with the current frame's geometry.

geom-opt

Normal Modes

Normal modes can be provided either via the Molden or Orca .hess file formats. Animation playing can be toggled with <space>.

normal-modes2

Export to PNG Format

The e key exports the current scene to a PNG.

benzene_hf 021

Tune Visuals

The V key opens a sidebar where the isovalue, molecule style and lighting can be modified.

image

The lower case v cycles between the styles.

CPK Licorice VDW

Toggle between light and dark mode with i.

Light Dark

Supported formats

Format Geometry Orbitals Normal Modes
XYZ
Gaussian ZMAT
Gaussian Cube
Molden
Gaussian .fchk
Orca .GBW¹
Orca .hess
TrexIO²

✓ supported; — not part of the file format

¹ Requires orca_2mkl in PATH

² Requires installing moltui[trexio]

Keybindings

Navigation

Key Action
h/j/k/l or arrows Rotate left/down/up/right
,/. Roll clockwise/counter-clockwise
J/K or +/- Zoom out/in
t Toggle pan/rotation mode
c Center view
r Reset view

Display

Key Action
o Toggle orbital isosurfaces
i Toggle dark/light theme
b Toggle bonds
e Export PNG
v Toggle style (CPK, Licorice, VDW)
# Toggle atom numbers

Panels

Key Action
m / M Cycle sidebar mode forward/backward (Geometry, MO, Normal Modes)
S Toggle current sidebar (hide/show)
V Toggle Visual settings panel
n/p Next/previous row in the active sidebar table
d/u Half page down/up in datatable
g/G Top/bottom of the datatable

Geometry panel

Key Action
Tab/Shift+Tab Switch Bonds/Angles/Dihedrals tab
s Toggle sort by value for active tab

Visual panel

Key Action
n/p Move focus to next/previous control
Tab/Shift+Tab Increase/decrease focused slider, or cycle style option

Animation and modes

Key Action
Space Toggle play/pause trajectory or normal mode animation
[ / ] Previous/next animation step (frame/phase)

General

Key Action
q Quit

Known Issues

  • Only up to g-shells are implemented as this is the highest orbital shell officially supported by the Molden format.
  • The content is rendered using braille Unicode characters and, therefore, the quality of rendering can depend on the font and terminal emulator. All figures in the repository have been generated using the JetBrains Mono Nerd Font in the Kitty terminal.
  • The Orca GBW file format is typically incompatible between versions. Therefore, the orca_2mkl should ideally be of the same version as the Orca version used to produce the GBW file. Newer version of Orca can try to recover earlier GBW files using the rescue feature.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moltui-0.4.2.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moltui-0.4.2-py3-none-any.whl (61.8 kB view details)

Uploaded Python 3

File details

Details for the file moltui-0.4.2.tar.gz.

File metadata

  • Download URL: moltui-0.4.2.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for moltui-0.4.2.tar.gz
Algorithm Hash digest
SHA256 2f7108558c576e3cb4cf464eed68da48043befe0989c680a6e0afc8d781ef4c9
MD5 7992dfcd3b561613ae70f61a963830b5
BLAKE2b-256 80fa8729b3b58f4ddf86fedc5ffade42f9d9cc22a2356ee501db891f73615f4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for moltui-0.4.2.tar.gz:

Publisher: release.yml on kszenes/moltui

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file moltui-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: moltui-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 61.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for moltui-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bf496c656832d282a516096346f7857efc7ddbedf53de43e720d3947bfde6f10
MD5 3b2b01ebf38807e973dd16e0fdf373b8
BLAKE2b-256 f602668c9099da1febc728dc100f28d541bf959c240d0b1e2d9ebe65a97279d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for moltui-0.4.2-py3-none-any.whl:

Publisher: release.yml on kszenes/moltui

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page