A lightweight Obsidian plugin for rendering supported materials science files directly inside Obsidian markdown documents.
Obsidian MatterViz is a materials visualization plugin built to render supported scientific files inside Obsidian markdown embeds. The main workflow is to place a supported file in a note, render it inline, and inspect the structure or spectra without leaving Obsidian.
The plugin focuses on a few core workflows:
```poscar
Cubic BN
3.57
0.00000000 0.50000000 0.50000000
0.50000000 0.00000000 0.50000000
0.50000000 0.50000000 0.00000000
B N
1 1
Selective dynamics
Cartesian
0.00000000 0.00000000 0.00000000 T T F
0.25000000 0.25000000 0.25000000 F F F
Cartesian
0.01000000 0.01000000 0.01000000
0.00000000 0.00000000 0.00000000
```
| Category | File / Example | Fence keyword(s) |
|---|---|---|
| Structure (VASP) | POSCAR / CONTCAR | poscar, vasp |
| Structure (CIF) | .cif / .mcif / .mmcif | cif, mcif, mmcif |
| Structure (XYZ) | .xyz / .extxyz | xyz, extxyz |
| Structure (other) | .pdb / .mol / .mol2 / .sdf | pdb, mol, mol2, sdf |
| LAMMPS / plain text | LAMMPS data, dump, .lmp |
lmp, data, dump |
| Trajectories | .traj, .h5, .hdf5, .dcd, .xtc, .trr, .lammpstrj |
traj, h5, hdf5, dcd, xtc, trr, lammpstrj |
| Volumetric (cube) | .cube | cube |
| Volumetric (VASP) | CHGCAR / ELFCAR / PARCHG | chgcar |
| Fermi / DOS / BXSF | .bxsf / .frmsf / DOSCAR | bxsf, frmsf, doscar |
| Vasprun (bands/DOS) | vasprun.xml | vasprun |
| Generic aliases | content-based hints / generic pastes | crystal, structure, matterviz |
git clone https://github.com/aritraroy24/obsidian-matterviz.git
cd obsidian-matterviz
npm install
npm run build
.obsidian/plugins/obsidian-matterviz/ if it does not already exist.dist/ folder, manifest.json, main.js and styles.css files into that folder.Settings > Community plugins and enable Obsidian MatterViz.poscar, cif, or traj with the appropriate content to verify it renders inline.Obsidian Vault/
└── .obsidian/
└── plugins/
└── obsidian-matterviz/
├── dist/
├── manifest.json
├── main.js
└── styles.css
KPOINTS file exists, MatterViz uses it for symmetry labels. The filename of the vasprun xml is used to find the corresponding KPOINTS file (e.g. vasprun.xml looks for KPOINTS, vasprun_band.xml looks for KPOINTS_band etc.).Special shoutout to the authors of MatterViz, Janosh Riebesell and Matthew Evans, for creating the original MatterViz library that powers this plugin:
If you use this project in academic work, please cite MatterViz:
@software{riebesell_matterviz_2022,
title = {matterviz: visualization toolkit for materials informatics},
author = {Riebesell, Janosh and Evans, Matthew},
date = {2026-01-23},
year = {2026},
doi = {10.5281/zenodo.17094509},
url = {https://github.com/janosh/matterviz},
note = {10.5281/zenodo.17094509 - https://github.com/janosh/matterviz},
urldate = {2026-01-23},
version = {0.3.1},
}
Author: Aritra Roy
Project Links: