This website is biased toward ReShiki, because its maintainer also maintains ReShiki. Please be careful.
chemfig
A TeX package for typesetting 2D chemical structures, reaction schemes, and mechanisms in publication documents.
Open source. 25 of 65 checklist features confirmed.
Main canvas
No GUI; fixed white TeX output shown in Preview.
Default drawings
- No GUI; window captures show an isolated Preview viewer.
- Chemfig does not read SMILES; mol2chemfig supplied drawing code and layout.
- Caffeine required MOL fallback after the original SMILES conversion failed.
- Paclitaxel phenyl rings became wavy through an external converter defect.
- No interactive 3D view; PNGs were converted externally from TeX PDFs.
- Redraw: current Kekule SMILES converted successfully for caffeine and paclitaxel; previous converter failures no longer occur.
- Redraw: mol2chemfig supplied layout without manual geometry or style changes; paclitaxel central bonds overlap.
- Redraw: both standalone PDFs were rasterized with pdftoppm at 300 dpi; PNGs contain only the drawings.
Facts
- Latest version
- 1.82
- Version we tested
- 1.82
- Runs on
- macOS, Windows, Linux
- License
- LaTeX Project Public License version 1.3c or later.
- Price
- Free
- Relies on
- No third-party engine found. Original TeX molecular drawing macros over TikZ; no interactive canvas.
- Draws with
- TikZ/PGF vector graphics through TeX
- Main language
- TeX
- Other languages
- None
- Renderer
- Original: chemfig molecular macros over TikZ/PGF
- Third-party licenses
- Not established
- Download
- 1.7 MB
- Installed
- 2.2 MB
- Requires TeX source editing and a compatible TeX/TikZ installation.
- Complex drawings require manually specified geometry.
- Some mechanism overlays require two compilation passes.
In use
Screenshots from our test of this version.

Single, double and triple bonds
Single, double and triple carbon bonds.

Wedge, hash and wavy bonds
Solid wedge, hashed wedge and wavy bonds.

Ring tools
Three-, five-, six-membered and aromatic rings.

Charges, isotopes and atom labels
Carbon isotope and positively charged nitrogen labels.

Radicals and lone pairs
Oxygen with a radical dot and lone pair.

Reaction arrows
Forward and equilibrium reaction arrows.

Curved mechanism arrows
Curved arrow above a carbon–oxygen double bond.

R-groups and query structures
Structure with a graphical R-group label.

PDF export
A rendered structure in a PDF viewer.
Features
- Tested by running it
- Seen in the app
- The manual says yes
- Partly, with the reason shown
- Not supported
- Not established, which is not the same as no
Select a mark for its proof. A filled mark opens our screenshot, or the manual if the check left nothing to picture. A ring opens the manual.
Drawing structures
- Yes, tested by running it: Single, double and triple bonds rendered from drawing code. Opens the screenshot.Single, double and triple bondsSingle, double and triple bonds rendered from drawing code.tug.ctan.org
- Yes, tested by running it: Wedge, hash and TikZ-decorated wavy bonds rendered. Opens the screenshot.Wedge, hash and wavy bondsWedge, hash and TikZ-decorated wavy bonds rendered.tug.ctan.org
- Not establishedDative, hydrogen and quadruple bonds
- Yes, tested by running it: Explicit upper, lower and centered double-bond strokes rendered. Opens the cited page.Choose double-bond sideExplicit upper, lower and centered double-bond strokes rendered.tug.ctan.org
- Yes, tested by running it: Three-, five-, six-membered and aromatic circle rings rendered. Opens the screenshot.Ring toolsThree-, five-, six-membered and aromatic circle rings rendered.tug.ctan.org
- Partly: Chair/Haworth examples require explicit bond angles. Opens the cited page.Chair and Haworth ringsChair/Haworth examples require explicit bond angles.tug.ctan.org
- Not establishedChain tool
- No: Undefined built-in Ph alias produced an empty page. Opens the cited page.Template libraryUndefined built-in Ph alias produced an empty page.
- Yes, tested by running it: Saved ester submolecule code expanded twice in different structures. Opens the cited page.Save your own templatesSaved ester submolecule code expanded twice in different structures.tug.ctan.org
- Partly: Custom submolecule expansion worked; built-in Ph was absent. Opens the cited page.Group abbreviationsCustom submolecule expansion worked; built-in Ph was absent.tug.ctan.org
- Yes, tested by running it: Carbon isotope and positive nitrogen charge rendered. Opens the screenshot.Charges, isotopes and atom labelsCarbon isotope and positive nitrogen charge rendered.tug.ctan.org
- Yes, tested by running it: Oxygen radical dot and lone pair rendered. Opens the screenshot.Radicals and lone pairsOxygen radical dot and lone pair rendered.tug.ctan.org
- Not establishedKeyboard drawing
- Partly: Rotation, flipping and scaling are specified through TeX code. Opens the cited page.Lasso select and transformsRotation, flipping and scaling are specified through TeX code.tug.ctan.org
- Partly: Perspective constructed manually with bond angles and lengths. Opens the cited page.Tilt drawings in perspectivePerspective constructed manually with bond angles and lengths.tug.ctan.org
Reactions and mechanisms
- Yes, tested by running it: Forward and equilibrium reaction arrows rendered. Opens the screenshot.Reaction arrowsForward and equilibrium reaction arrows rendered.tug.ctan.org
- Yes, tested by running it: Curved full-head arrow rendered through chemmove and TikZ. Opens the screenshot.Curved mechanism arrowsCurved full-head arrow rendered through chemmove and TikZ.tug.ctan.org
- Not establishedMachine-readable reactions
- Not establishedAtom mapping
- Not establishedOrbitals and symbols
Figures and layout
- Yes, according to the manual: TeX captions and positioned TikZ text. Opens the cited page.Rich text captionsTeX captions and positioned TikZ text.tug.ctan.org
- Yes, according to the manual: TikZ shapes and curves; expandable chemfig brackets. Opens the cited page.Shapes, brackets and curvesTikZ shapes and curves; expandable chemfig brackets.tug.ctan.org
- Partly: Code-based alignment and spacing, without selecting canvas objects. Opens the cited page.Align and distributeCode-based alignment and spacing, without selecting canvas objects.tug.ctan.org
- Yes, according to the manual: Subschemes are positioned as single entities. Opens the cited page.Group and ungroupSubschemes are positioned as single entities.tug.ctan.org
- Not established2D structure cleanup
- Not establishedJournal drawing styles
- Yes, according to the manual: Reusable TeX settings for bonds and atom fonts. Opens the cited page.Reusable custom stylesReusable TeX settings for bonds and atom fonts.tug.ctan.org
- Yes, according to the manual. Opens the cited page.Color controltug.ctan.org
- Yes, according to the manual: TikZ overlays add translucent backgrounds behind chosen atoms and bonds. Opens the cited page.Color highlightingTikZ overlays add translucent backgrounds behind chosen atoms and bonds.tex.stackexchange.com
- Not establishedPage layout and multipage
- Not establishedImported pictures
- Not establishedTLC plates and tables
Chemistry intelligence
- No: Six-bond carbon rendered without a chemical validation warning. Opens the cited page.Structure checkingSix-bond carbon rendered without a chemical validation warning.
- Not establishedR/S and E/Z labels
- Not establishedFormula and mass
- Not establishedProperty estimates
- No: Direct caffeine input printed its name as a label. Opens the cited page.Name to structureDirect caffeine input printed its name as a label.
- Not establishedStructure to name
- Not establishedNMR prediction
- Partly: Graphical R-group label only; query semantics were not tested. Opens the screenshot.R-groups and query structuresGraphical R-group label only; query semantics were not tested.tug.ctan.org
- Partly: Node-anchored delimiters and indices; graphical repeat representation only. Opens the cited page.Polymers and repeat unitsNode-anchored delimiters and indices; graphical repeat representation only.tug.ctan.org
- Not establishedPeptides and nucleic acids
- Not establishedImage to structure
- Not establishedOnline structure lookup
- Not established3D model view
- Not establishedCrystal structures
Files and exchange
- No: Direct CDXML through TeX input failed; no native importer. Opens the cited page.CDXML import and exportDirect CDXML through TeX input failed; no native importer.
- Not establishedCDX import and export
- No: Direct MOL input failed; conversion required external mol2chemfig. Opens the cited page.MOL and SDFDirect MOL input failed; conversion required external mol2chemfig.
- No: Direct SMILES produced overlapping labels; external conversion required. Opens the cited page.SMILESDirect SMILES produced overlapping labels; external conversion required.
- Not establishedInChI
- Not establishedRXN files
- No: Native output-format request rejected SVG. Opens the cited page.SVG exportNative output-format request rejected SVG.
- Yes, tested by running it: Vector PDFs compiled with Tectonic using default drawing settings. Opens the screenshot.PDF exportVector PDFs compiled with Tectonic using default drawing settings.tug.ctan.org
- No: Native request rejected PNG; pdftoppm rasterization was external. Opens the cited page.High-resolution PNGNative request rejected PNG; pdftoppm rasterization was external.
- Not establishedPaste to and from ChemDraw
- Not establishedEditable in Word or PowerPoint
- Not establishedWindows Office OLE
APIs and automation
- Not establishedPython API
- Not establishedJavaScript or TypeScript API
- Yes, tested by running it: Rendered through a TeX compiler without an editor GUI. Opens the cited page.Command-line toolRendered through a TeX compiler without an editor GUI.tug.ctan.org
- Not establishedAI agent control
- Not establishedBuilt-in AI assistant
Embedding and extension
- Yes, according to the manual: Custom arrow definitions and atom-rendering macros. Opens the cited page.PluginsCustom arrow definitions and atom-rendering macros.tug.ctan.org
- Not established: TeX typesetting macros; no embeddable editor documented.Embed in your own appTeX typesetting macros; no embeddable editor documented.ctan.org


