This website is biased toward ReShiki, because its maintainer also maintains ReShiki. Please be careful.
SketChem
A browser-based editor for creating and editing 2D chemical structures.
Open source. 15 of 65 checklist features confirmed.
Main canvas
Default drawings
- Hosted bundle identifier is main.6ed8c631.js; no app version was displayed.
- MOL imports show explicit carbon labels and colored heteroatoms by default.
- Paclitaxel shows solid and hashed stereobonds from the MOL fixture.
- Image captures are crops of the isolated native web host window.
- The cholesterol MOL output contained zero atoms after SDF import.
Facts
- GitHub stars
- 19 stars on 6 Nov 2026
- First commit
- 30 Jan 2022
- Repository activity
- 138 commits, 3 contributors, last push 31 Jul 2022
- Version we tested
- 6ed8c631
- Runs on
- Browser
- License
- MIT license; free to use, modify and redistribute.
- Price
- Free
- Relies on
- Kekule.js, Open Babel, Indigo. Custom SVG sketchpad; Kekule.js provides chemistry with Open Babel and Indigo.
- Draws with
- Custom SVG drawing
- Chemistry from
- Kekule.js with Open Babel and Indigo (WebAssembly)
- Interface
- React and Redux
- Main language
- TypeScript
- Other languages
- JavaScript: Kekule.js chemistry and format integration; C++: Open Babel and Indigo WebAssembly chemistry; C: InChI compiled into Open Babel WebAssembly
- Renderer
- Original: In-house SVG renderer using SVG.js
- Third-party licenses
- Includes GPL-2.0-only Open Babel code/data and copied valence routines alongside MIT Kekule.js and Apache-2.0 Indigo.
- Development-stage editor with no tagged releases; runtime usability was not tested.
- README calls copy/paste clipboard operations; the toolbar buttons use an internal buffer.
- Source review suggests changed wedge stereochemistry may be lost on export.
In use
Screenshots from our test of this version.

Single, double and triple bonds
Bond buttons and single and double bonds on the canvas.

Wedge, hash and wavy bonds
Solid and hashed wedge bonds in an imported structure.

Charges, isotopes and atom labels
Element palette beside a caffeine structure with labeled atoms.

Lasso select and transforms
Box and lasso selection buttons above the canvas.
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
- Partly: Bond tools selected; attempted canvas edits did not change drawing. Opens the screenshot.Single, double and triple bondsBond tools selected; attempted canvas edits did not change drawing.github.com
- Partly: Imported wedges render; attempted wedge edit did not change drawing. Opens the screenshot.Wedge, hash and wavy bondsImported wedges render; attempted wedge edit did not change drawing.github.com
- Partly: Single-or-double query bonds only; no dative rendering. Opens the cited page.Dative, hydrogen and quadruple bondsSingle-or-double query bonds only; no dative rendering.github.com
- No: Double-bond geometry is fixed symmetrically around the bond axis. Opens the cited page.Choose double-bond sideDouble-bond geometry is fixed symmetrically around the bond axis.github.com
- No: No dedicated ring tools found. Opens the cited page.Ring toolsNo dedicated ring tools found.
- Not establishedChair and Haworth rings
- Yes, according to the manual. Opens the cited page.Chain toolgithub.com
- No: No template library found. Opens the cited page.Template libraryNo template library found.
- Not establishedSave your own templates
- Not establishedGroup abbreviations
- Partly: Charges and element labels; no dedicated isotope-setting control. Opens the cited page.Charges, isotopes and atom labelsCharges and element labels; no dedicated isotope-setting control.github.com
- Not establishedRadicals and lone pairs
- Partly: Shortcuts change tools or selections; hovering alone does not edit. Opens the cited page.Keyboard drawingShortcuts change tools or selections; hovering alone does not edit.github.com
- Partly: Lasso and box selection with movement; no rotate, flip or resize. Opens the cited page.Lasso select and transformsLasso and box selection with movement; no rotate, flip or resize.github.com
- Not establishedTilt drawings in perspective
Reactions and mechanisms
- No: No reaction arrow tool found. Opens the cited page.Reaction arrowsNo reaction arrow tool found.
- No: No curved arrow tool found. Opens the cited page.Curved mechanism arrowsNo curved arrow tool found.
- Not establishedMachine-readable reactions
- Not establishedAtom mapping
- Not establishedOrbitals and symbols
Figures and layout
- Not establishedRich text captions
- Not establishedShapes, brackets and curves
- Not establishedAlign and distribute
- Not establishedGroup and ungroup
- Partly: Automatic 2D layout on text import only. Opens the cited page.2D structure cleanupAutomatic 2D layout on text import only.github.com
- Not establishedJournal drawing styles
- Not establishedReusable custom styles
- Not establishedColor control
- Partly: Cyan atom/bond selection backgrounds; chemical exports omit them. Opens the cited page.Color highlightingCyan atom/bond selection backgrounds; chemical exports omit them.github.com
- Not establishedPage layout and multipage
- Not establishedImported pictures
- Not establishedTLC plates and tables
Chemistry intelligence
- Yes, according to the manual. Opens the cited page.Structure checkinggithub.com
- Not establishedR/S and E/Z labels
- No: No formula or mass command found. Opens the cited page.Formula and massNo formula or mass command found.
- Not establishedProperty estimates
- No: No name input command found. Opens the cited page.Name to structureNo name input command found.
- No: No structure naming command found. Opens the cited page.Structure to nameNo structure naming command found.
- Not establishedNMR prediction
- Not establishedR-groups and query structures
- Not establishedPolymers and repeat units
- Not establishedPeptides and nucleic acids
- Not establishedImage to structure
- Not establishedOnline structure lookup
- No: SDF opened as flat projection; no 3D view found. Opens the cited page.3D model viewSDF opened as flat projection; no 3D view found.
- Not establishedCrystal structures
Files and exchange
- No: CDXML absent from import and export format lists. Opens the cited page.CDXML import and exportCDXML absent from import and export format lists.
- Partly: CDX listed for import, not export. Opens the cited page.CDX import and exportCDX listed for import, not export.
- Partly: MOL and SDF import; MOL export lost coordinates. Opens the cited page.MOL and SDFMOL and SDF import; MOL export lost coordinates.github.com
- Partly: Caffeine SMILES exported; pasted SMILES displayed blank. Opens the cited page.SMILESCaffeine SMILES exported; pasted SMILES displayed blank.github.com
- Partly: InChI listed in import and export menus. Opens the cited page.InChIInChI listed in import and export menus.
- Partly: RXN listed in import and export menus. Opens the cited page.RXN filesRXN listed in import and export menus.
- No: No SVG export option found. Opens the cited page.SVG exportNo SVG export option found.
- No: No PDF export option found. Opens the cited page.PDF exportNo PDF export option found.
- No: No PNG export option found. Opens the cited page.High-resolution PNGNo PNG export option found.
- 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
- Not establishedCommand-line tool
- Not establishedAI agent control
- Not establishedBuilt-in AI assistant
Embedding and extension
- Not establishedPlugins
- Not established: Standalone React application; supported editor embedding remains unconfirmed.Embed in your own appStandalone React application; supported editor embedding remains unconfirmed.github.com


