This website is biased toward ReShiki, because its maintainer also maintains ReShiki. Please be careful.
Ketcherails (ketcher-rails)
A Rails component for embedding a 2D chemical structure editor with templates and server chemistry services.
Open source. 32 of 65 checklist features confirmed.
Main canvas
Default drawings
- Page title identifies the embedded editor as Ketcher v1.1-beta.
- SMILES layout endpoint returned a stub response for both fixtures.
- Image captures show the drawing area; no image export was offered.
- Paclitaxel MOL displayed overlapping labels at default style.
- Molecule properties retrieved a systematic name from the configured service.
Facts
- GitHub stars
- 3 stars on 6 Nov 2026
- First commit
- 18 May 2016
- Repository activity
- 164 commits, 9 contributors, last push 6 Aug 2024
- Latest version
- v0.1.12
- Version we tested
- 0.1.12
- Runs on
- Browser
- License
- Wrapper declares GPLv3; bundled Ketcher code carries AGPLv3 notices.
- Price
- Free
- Relies on
- Ketcher, Open Babel, InChI. Modified Ketcher 1.1 canvas adds polymer tools and coordination-bond rendering.
- Draws with
- Raphaël SVG/VML in the browser; Open Babel SVG and Inkscape template PNG conversion.
- Chemistry from
- Ketcher 1.1-beta JavaScript chemistry core; Open Babel; inchi-gem in current source.
- Interface
- Ruby on Rails with Prototype.js, jQuery UI and Bootstrap.
- Main language
- JavaScript
- Other languages
- Ruby: Rails engine and server chemistry
- Renderer
- Borrowed: Ketcher 1.1 Raphaël renderer
- Third-party licenses
- Includes AGPL-3.0-only Ketcher; GPL-2.0-only Open Babel (GPL-3.0 wrapper); LGPL-2.1 inchi-gem; InChI 1.06 under legacy InChI-Trust 1.0 weak copyleft; MIT libraries/fonts.
- Download
- 8.2 MB
- Installed
- 693 MB
- Requires a host Rails application; personal templates require Warden authentication.
- The paper claims SMILES import and mobile use; import is stubbed and touch handling disabled.
- README declares GPLv3; bundled Ketcher source declares AGPLv3.
In use
Screenshots from our test of this version.

Single, double and triple bonds
Single, double, and triple bonds on the drawing canvas.

Wedge, hash and wavy bonds
Solid wedge, hashed wedge, and wavy bonds on the canvas.

Dative, hydrogen and quadruple bonds
Bond menu showing coordination bond options.

Ring tools
Benzene and cyclopropane rings on the drawing canvas.

Reaction arrows
A forward arrow alongside bond and ring drawings.

2D structure cleanup
Clean command in the toolbar above drawn structures.

Formula and mass
Molecule properties show molecular weight and formula.

Structure to name
Molecule properties show an IUPAC name above the drawing.

MOL and SDF
Save File dialog shows MDL/Symyx Molfile text.
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: Drew single, double, triple; changed a single bond. Opens the screenshot.Single, double and triple bondsDrew single, double, triple; changed a single bond.github.com
- Yes, tested by running it: Drew wedge, hashed wedge, and wavy bonds. Opens the screenshot.Wedge, hash and wavy bondsDrew wedge, hashed wedge, and wavy bonds.github.com
- Partly: Dative and dashed coordination are the available specialist bonds. Opens the cited page.Dative, hydrogen and quadruple bondsDative and dashed coordination are the available specialist bonds.github.com
- Not establishedChoose double-bond side
- Yes, tested by running it: Placed benzene and cyclopropane; other sizes shown. Opens the screenshot.Ring toolsPlaced benzene and cyclopropane; other sizes shown.github.com
- Yes, according to the manual: Chair templates are included in the seed library. Opens the cited page.Chair and Haworth ringsChair templates are included in the seed library.github.com
- Yes, according to the manual. Opens the cited page.Chain toolgithub.com
- No: Template search was empty; custom template endpoint returned 500. Opens the cited page.Template libraryTemplate search was empty; custom template endpoint returned 500.github.com
- Yes, according to the manual: Personal templates require host authentication and server storage. Opens the cited page.Save your own templatesPersonal templates require host authentication and server storage.github.com
- Yes, according to the manual: Approved abbreviations resolve to structures and chemical S-groups. Opens the cited page.Group abbreviationsApproved abbreviations resolve to structures and chemical S-groups.github.com
- Yes, according to the manual. Opens the cited page.Charges, isotopes and atom labelsgithub.com
- Yes, according to the manual: Mono- and diradical atom settings. Opens the cited page.Radicals and lone pairsMono- and diradical atom settings.github.com
- Yes, according to the manual. Opens the cited page.Keyboard drawinggithub.com
- Partly: Lasso, rotation and flips; no resize tool. Opens the cited page.Lasso select and transformsLasso, rotation and flips; no resize tool.github.com
- Not establishedTilt drawings in perspective
Reactions and mechanisms
- Partly: Drew forward arrow; no alternate arrow types shown. Opens the screenshot.Reaction arrowsDrew forward arrow; no alternate arrow types shown.github.com
- No: Reaction menu exposes straight arrow, plus, and mapping tools. Opens the cited page.Curved mechanism arrowsReaction menu exposes straight arrow, plus, and mapping tools.
- Yes, according to the manual: RXN serialization; reactions containing R-groups are rejected. Opens the cited page.Machine-readable reactionsRXN serialization; reactions containing R-groups are rejected.github.com
- Yes, according to the manual: Manual reactant/product atom mapping. Opens the cited page.Atom mappingManual reactant/product atom mapping.github.com
- Not establishedOrbitals and symbols
Figures and layout
- Not establishedRich text captions
- Partly: Chemical S-group brackets only. Opens the cited page.Shapes, brackets and curvesChemical S-group brackets only.github.com
- Not establishedAlign and distribute
- Yes, according to the manual: Atoms and bonds group through chemical S-groups. Opens the cited page.Group and ungroupAtoms and bonds group through chemical S-groups.github.com
- Yes, according to the manual: Server-side Open Babel generates 2D coordinates. Opens the cited page.2D structure cleanupServer-side Open Babel generates 2D coordinates.github.com
- Not establishedJournal drawing styles
- Not establishedReusable custom styles
- Not establishedColor control
- Partly: Highlighting is limited to fixed green selection backgrounds and hover halos. Opens the cited page.Color highlightingHighlighting is limited to fixed green selection backgrounds and hover halos.github.com
- Not establishedPage layout and multipage
- Not establishedImported pictures
- Not establishedTLC plates and tables
Chemistry intelligence
- Yes, according to the manual: Invalid connectivity receives a red warning. Opens the cited page.Structure checkingInvalid connectivity receives a red warning.github.com
- Not establishedR/S and E/Z labels
- Yes, tested by running it: Paclitaxel formula and molecular weight displayed. Opens the screenshot.Formula and massPaclitaxel formula and molecular weight displayed.github.com
- Not establishedProperty estimates
- No: Entering caffeine in Open produced no structure. Opens the cited page.Name to structureEntering caffeine in Open produced no structure.
- Yes, tested by running it: Molecule properties returned paclitaxel IUPAC name. Opens the screenshot.Structure to nameMolecule properties returned paclitaxel IUPAC name.github.com
- Not establishedNMR prediction
- Yes, according to the manual: R-group labels, fragments and attachment points. Opens the cited page.R-groups and query structuresR-group labels, fragments and attachment points.github.com
- Yes, according to the manual: Semantic SRU repeat units with connectivity and MOL serialization. Opens the cited page.Polymers and repeat unitsSemantic SRU repeat units with connectivity and MOL serialization.github.com
- Yes, according to the manual: Builds structures from hyphenated amino acid or peptoid monomer sequences. Opens the cited page.Peptides and nucleic acidsBuilds structures from hyphenated amino acid or peptoid monomer sequences.github.com
- Not establishedImage to structure
- Not establishedOnline structure lookup
- No: SDF opened as flat drawing; no 3D viewport found. Opens the cited page.3D model viewSDF opened as flat drawing; no 3D viewport found.
- Not establishedCrystal structures
Files and exchange
- No: CDXML text produced no drawing; no CDXML save option. Opens the cited page.CDXML import and exportCDXML text produced no drawing; no CDXML save option.
- Not establishedCDX import and export
- Yes, tested by running it: MOL read and written; single SDF opened flat. Opens the screenshot.MOL and SDFMOL read and written; single SDF opened flat.link.springer.com
- Partly: SMILES output worked; SMILES imports produced no drawing. Opens the cited page.SMILESSMILES output worked; SMILES imports produced no drawing.github.com
- Yes, according to the manual: Server export added after v0.1.12. Opens the cited page.InChIServer export added after v0.1.12.github.com
- Yes, according to the manual: Reads and writes MDL RXN reaction data. Opens the cited page.RXN filesReads and writes MDL RXN reaction data.github.com
- Yes, according to the manual: SVG getter exposed through the embedding API. Opens the cited page.SVG exportSVG getter exposed through the embedding API.github.com
- No: No PDF export command found. Opens the cited page.PDF exportNo PDF export command found.
- No: No PNG export command found. Opens the cited page.High-resolution PNGNo PNG export command found.
- Not establishedPaste to and from ChemDraw
- Not establishedEditable in Word or PowerPoint
- Not establishedWindows Office OLE
APIs and automation
- Not establishedPython API
- Yes, according to the manual: Documented JavaScript getters and molecule setter. Opens the cited page.JavaScript or TypeScript APIDocumented JavaScript getters and molecule setter.github.com
- Not establishedCommand-line tool
- Not establishedAI agent control
- Not establishedBuilt-in AI assistant
Embedding and extension
- Not establishedPlugins
- Yes, according to the manual: Add ketcherails gem; iframe /ketcher; use contentWindow.ketcher for molecule exchange. Opens the cited page.Embed in your own appAdd ketcherails gem; iframe /ketcher; use contentWindow.ketcher for molecule exchange.github.com


