ChemEdit
approvedby Ruzal Sitdikov
Chemistry editor for Obsidian with ELN support. Draw and edit chemical structures, molecules and reactions for organic chemistry. Supports SMILES, MOL, and ChemDraw (CDXML) files. - This plugin has not been manually reviewed by Obsidian staff.
ChemEdit
Bring chemistry to Obsidian.
ChemEdit is a fully-integrated chemical structure editor and viewer. Powered by Ketcher and SmilesDrawer, it allows you to natively draw reactions, edit .mol files, preview ChemDraw (.cdxml) files directly inside your vault, and keep simple electronic lab notebooks (ELNs).
Quick Demo
ELN Quick Demo
π Release Notes
π What's New in ChemEdit 1.3.5-1.3.7
- Fixed MW (changed engine) auto-calculation bugs for complex stereobonds conjugated to aromatic rings (e.g.,
/or\next to ring closuresC=1) (thanks @Snipinium!). - Fixed a YAML parsing error caused by backslashes in SMILES strings (e.g., geometric isomers). (thanks @ignorgchem!).
- Fixed MW auto-calculation bugs for atoms like P and S (thanks @Snipinium!).
- Added inline editing to ELN tables: double-click Eq, Mass, Temp, or Solvent to edit.
- Added basic support for drawing full reactions in the ELN editor (it will try to parse reactants and products from the arrow).
- Added
chem-dbcode blocks for better tracking inventories and libraries.
π How to use ChemDB blocks
Insert these anywhere to generate interactive databases:
Compound Library (Table):
```chem-db
type: library
folder: Library
```
Compound Library (Grid):
```chem-db
type: library
path: Library
layout: grid
```
ELN Database:
```chem-db
type: eln
folder: _mobile_obsidian/ELN
```
Chemical Inventory:
```chem-db
type: inventory
folder: _mobile_obsidian/Chemical_Inventory
```
ELN editable field (double click) demo:
chem-db for ELN Database demo substructure search example:
π What's New in ChemEdit 1.3.3 - 1.3.4
- Compound Library β Search, insert, and save compounds from built-in or custom Markdown libraries.
- Chemistry Context Menu β Right-click structures to copy SMILES/MOL, retrieve chemical properties, and open PubChem, ChemSpider, MolPort, or NMRium.
1.3.2
- Interactive ELN Editor: Added a floating action bar to ELN blocks. You can now visually edit Reactants, Products, Equivalents, and Procedures via a clean UI without touching Markdown YAML!
- π§ͺ Auto-Name Structures: Added a smart "Auto-Name" button inside the ELN editor that automatically fetches IUPAC/Common names for your drawn structures via PubChem/CACTUS.
- πΈ Fume Hood Utilities (Media Ribbon): Take Lab Photos or upload TLC plates directly into your notes.
- Stoichiometry Engine: Reagents are now fully synced. Set a β Limiting Reagent, change its mass, and watch every other chemical scale automatically.
- Concentration Support: Define reagents by
Purity (%)orMolarity (M). Volumes (mL) and active masses are calculated instantly.
β‘ Custom Macros & Media
- Smart Attachment Sync: Added a custom Flask ribbon icon (optional in settings). Creating a new experiment saves it in your default ELN directory. Click
PhotoorTLCinside the experiment, and the image is auto-prefixed with your experiment code (e.g.EXP-005_TLC_1204.png) and smart-pasted directly into the Analytical Data section. - Clone Experiment: Instantly duplicate a reaction to a new file. It clones the scheme but wipes the yields so you can run it again.
- Macros Menu: Instantly drop timestamps or boilerplate text (like aqueous workups and column chromatography procedures) into your markdown via the β‘ Macros button.
πΌοΈ Dynamic Galleries & Embeds
- Gallery Grids: Type
chem-gallery path: Folder/oreln-gallery path: Folder/to render beautiful, searchable grids of your structures and past experiments.
π What's New in ChemEdit 1.3.2
ChemEdit now supports viewing and editing biological sequences via Ketcher's macromolecule mode.
- Explanation: Native codeblock and file support for DNA, RNA, and Peptides.
- Examples: You can now use
fasta,helm,idt,sequence, andbilncodeblocks. (Note: Ketcher's biological parser is still in active upstream development, so highly complex sequences may fall back to default structural representations).
Ketcher SVGs support
SVGs that act as standard images but contain editable chemical data.
- Example:
![[aspirin.svg]]renders anywhere in your vault and can be open in other programs as normal svg. Right-click the file in Obsidian to see the new "Edit SVG in Ketcher" option.
β¨ Features
- Native File Support: Render and edit
.mol,.cdxml,.rxn, and more directly via standard Obsidian embeds (![[file.mol]]). - Double-Click to Edit: Click any rendered molecule to open the visual drawing interface.
- Auto-Save: Hit "Save" in the editor to instantly overwrite the file on your hard drive and update the preview.
- Inline Molecules: Render small molecules directly inside sentences using
$smiles=C1=CC=CC=C1. - Smart Paste: Paste SMILES or MOL text directly into the editor and let ChemEdit format it for you.
- Smart Themes: Structures automatically adapt to your Obsidian Light/Dark mode.
- Reactions: Full support for drawing and rendering complex chemical reactions.
π How to Use
1. Native File Embeds (The Easy Way)
Drop a chemistry file into your vault and embed it in your note using Obsidian's standard syntax. ChemEdit will automatically replace the generic file box with a rendered image!
![[caffeine.cdxml]]
![[aspirin.mol]]
![[reaction.rxn]]
Double-click the image to open Ketcher, edit the molecule, and save!
β οΈ Disclaimer on
.cdxmlfiles: ChemEdit uses Ketcher's open-source conversion engine. While most standard structures and reactions work perfectly, highly complex formatting or proprietary ChemDraw-specific objects may not be 100% supported.
2. SMILES Blocks
Write SMILES strings directly in your markdown using code blocks:
```smiles
CC(=O)OC1=CC=CC=C1C(=O)O
```
Double-click the structure to edit it visually. Saving will automatically update the text in your code block.
3. Inline Molecules
You can render molecules directly inside a sentence. Perfect for chemical tables!
The structure of Benzene is $smiles=C1=CC=CC=C1 and it is a liquid at room temp.
4. Draw from Scratch
Click the Hexagon (cyclohexane) Icon in your left-hand ribbon (or use the Command Palette: Draw new SMILES molecule) to open a blank canvas. Draw your structure, select your desired format, hit Save, and it will be inserted exactly where you are typing.
π§ͺ Electronic Lab Notebook (ELN)
ChemEdit includes an automatic stoichiometry calculator and experimental logbook generator. Using a simple YAML code block, you can define your reaction, and ChemEdit will:
- Calculate stoichiometry (moles, mass, volume).
- Calculate theoretical yield and percentage yield.
ELN Usage
Create an eln code block and define your experiment:
```eln
Code: RSA-007
title: Aspirin Synthesis
author: rsa
creation_date: Dec 16, 2018
duration: 20 min
solvent: none
temperature: 80 Β°C
reactants:
- name: Salicylic acid
smiles: O=C(C1C(O)=CC=CC=1)O
eq: 1
mass: 1381
- name: Acetic anhydride
smiles: CC(=O)OC(=O)C
eq: 1.5
density: 1.08
- name: Sulfuric acid (catalytic)
smiles: OS(=O)(=O)O
eq: 0.05
density: 1.84
products:
- name: Aspirin
smiles: CC(=O)OC1=CC=CC=C1C(=O)O
eq: 1
mass_isolated: 1600
procedure: |
Salicylic acid was mixed with acetic anhydride, followed by the addition of catalytic sulfuric acid. The reaction mixture was heated at 80 Β°C for 20 min, then cooled and poured into ice-water. The precipitated aspirin was collected by filtration, washed with cold water, and dried.
```
π₯ Installation
From Obsidian Community Plugins (Recommended)
- Open Settings β Community plugins.
- Click Browse and search for ChemEdit.
- Click Install and then Enable.
Manual Installation
- Download
main.jsandmanifest.jsonfrom the Releases page. - Place them in your vault at
.obsidian/plugins/chemedit/. - Reload plugins and enable ChemEdit.
π Feedback & Bugs
Found a bug or have a feature request? Please open an issue on GitHub.
π Acknowledgements
A massive thank you to the creators of the Chem and Ketcher Obsidian plugins. Their fantastic work provided the initial inspiration to build this tool. ChemEdit was ultimately born out of a desire to create a dedicated Electronic Lab Notebook (ELN) experience in Obsidianβone that offers seamless, visual molecule editing and native, dynamic interactive support for SMILES, ChemDraw (.cdxml) and Mol (.mol) files.
- Ketcher by EPAM Systems
- SmilesDrawer by the Reymond Group
π¬ Related Chemistry Plugins
ChemEdit focuses on interactive molecular drawing, editing, and visualization. Depending on your workflow, you may also find these Obsidian plugins useful:
| Plugin | Description |
|---|---|
| Chem | Render SMILES structures locally using SmilesDrawer and RDKit.js. Great for fast inline visualization without requiring an external service. |
| Ketcher | Embed the Ketcher molecule editor directly inside Obsidian to draw and edit molecules and reactions. |
| Chemical Structure Renderer | Render SMILES structures using the Ketcher + Indigo rendering service. Supports SVG/PNG output and custom rendering servers. |
| LaTeX Suite | Makes writing chemistry equations easier with LaTeX packages such as mhchem and chemfig. |
| TikZJax | Render TikZ diagrams directly inside Obsidian, including figures created with chemfig. |
| Excalidraw | Draw reaction mechanisms, synthesis schemes, and lecture notes by hand. |
Why ChemEdit?
ChemEdit combines features that would otherwise require several plugins:
- Interactive Ketcher editor.
- Native editing of SMILES, MOL, and CDXML files.
- Double-click editing directly from rendered structures.
- Automatic synchronization with files in your vault.
- Online and fully offline modes.
- Experimental Electronic Lab Notebook (ELN) with stoichiometry calculations.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.