This website is biased toward ReShiki, because its maintainer also maintains ReShiki. Please be careful.
Under the hood
What each tool is built on, how big it is, and how you can script it. Sizes come from the file we downloaded and from the installed folder. How we measure speed.
What these tools rely on
Many tools share the same few projects. Open one to see who relies on it. We could not establish this for 27 of the 128 tools, mostly closed products.
RDKit, 32 tools rely on it
ReShiki (ported, not linked), Penzene, ChemDraft, SketchIQ, Reactio Draw, Chem Illustrator, ChemThisTry, Molecule Lab (The Freshman Mole), vibe-sketcher, ErezDraw, MolChart, Kendraw, BoltzDraw, BondForge, MoleditPy, Molecule Builder (OvOHongYu), KetchDraw, Schrödinger Sketcher, Chemable, WaveSpeed AI Chemical Structure Drawer, BondCraft, Molecule Clipboard, SketchScape, Structura (chem-structura), MolSketch, rdEditor, InDraw, Ferrum Chemical Forge, ChemCAD, ChemStitch, Elk_Draw RDKit, MolGenDraw
InChI, 22 tools rely on it
ReShiki (ported, not linked), Penzene, Octet Draw, ChemDraft, Reactio Draw, vibe-sketcher, Ketcher, Schrödinger Sketcher, WaveSpeed AI Chemical Structure Drawer, cDraw, JChemPaint, ChemSema, Kekule.js, JSME Molecule Editor, Ketcherails (ketcher-rails), BKChem Python 3 Modernized, Marvin Desktop Suite / MarvinSketch, InDraw, BKChem, ChemPencil, Ferrum Chemical Forge, AtomLens
Indigo, 19 tools rely on it
MolDraw, Octet Draw, ChemDraft, SketchIQ, ChemEdit, ChemThisTry, FreeChemDraw, vibe-sketcher, Kendraw, BoltzDraw, Molbrett, Chemeditor (Chemrise), Ketcher, AI Chemical Drawing (CubicZnS), KetchDraw, Kekule.js, SketChem, InDraw, Chemistry Draw
Ketcher, 14 tools rely on it
SketchIQ, ChemEdit, ChemThisTry, FreeChemDraw, vibe-sketcher, Kendraw, BoltzDraw, Molbrett, Chemeditor (Chemrise), AI Chemical Drawing (CubicZnS), KetchDraw, Ketcherails (ketcher-rails), Chemistry Draw, ChemStitch
OPSIN, 13 tools rely on it
ReShiki (ported, not linked), Octet Draw, ChemDraft, SketchIQ, Reactio Draw, Chem Illustrator, vibe-sketcher, BondForge, ChemDoodle 2D, ChemWindow (KnowItAll ChemWindow Edition), AtomLens, ChemCAD, ChemStitch
OpenChemLib, 13 tools rely on it
MolDraw, ChemDraft, Reactio Draw, ChemEdit, Chem Illustrator, ErezDraw, MolChart, MolCanvas, Chemliora, OpenReactions, WaveSpeed AI Chemical Structure Drawer, OpenChemLib JS editor, JSME Molecule Editor
Open Babel, 9 tools rely on it
Molecule Lab (The Freshman Mole), BoltzDraw, Molsketch, Kekule.js, XDrawChem, Ketcherails (ketcher-rails), SketChem, GChemPaint, Chemtool
3Dmol.js, 5 tools rely on it
ChemThisTry, Molecule Lab (The Freshman Mole), FreeChemDraw, Chemable, WaveSpeed AI Chemical Structure Drawer
CDK, 5 tools rely on it
cDraw, JChemPaint, MolGLideX, Kemia (ported, not linked), AtomLens
Miew, 4 tools rely on it
CoordGen, 4 tools rely on it
vibe-sketcher, WaveSpeed AI Chemical Structure Drawer, BondCraft, ChemCAD
OASA, 4 tools rely on it
ChemCanvas (ported, not linked), PyChem-Pro, BKChem Python 3 Modernized, BKChem
openclatura, 2 tools rely on it
ReShiki (ported, not linked), Reactio Draw
Kekule.js, 2 tools rely on it
ChemCanvas, 2 tools rely on it
Imago, 2 tools rely on it
Memory and startup were measured on the maintainer's own Mac (Apple M4, 32 GB, macOS 27.0.1, 2× display). They are not guaranteed values. Yours will differ with your hardware, macOS and app versions, window size and what else is running.
| Tool | Version | Relies on | Main language | Other languages | Draws with | Download | Installed | Startup | Memory at idle | Memory with paclitaxel | Python | JS or TS | CLI | AI agents | Embed in your own app | How | Limit | Plugins | Editable in Office |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ChemDraw | 26.0.0.6599 | Not established | Not published | Not established | Not published | Not measured | 334 MB | 2.0 s | 254 MB | 291 MB | Partly: Not in Prime. ChemScript SDK in Professional and Signals, Windows only. Opens the cited page. | Partly: Not in Prime. Desktop add-in API in Signals only, not a JavaScript library. Opens the cited page. | No: No command-line tool. ChemScript scripts can automate work in Professional and Signals. Opens the cited page. | Not established | Partly: Separate ChemDraw JS subscription; vendor-supplied tarball required. Opens the cited page. | npm package, script tag@revvity-signals/chemdraw-js | Separate ChemDraw JS subscription; vendor-supplied tarball required | Partly: Not in Prime. Add-ins SDK in Signals only. Opens the cited page. | Yes, according to the manual: Windows editable OLE objects; all desktop editions. Opens the cited page. |
| ReShiki | 0.14.0 | COSMolKit (Rust port of RDKit)Ported into its own code: RDKit, OPSIN, openclatura, InChI, Centres | Rust | Python: Bindings; JavaScript: Browser bindings and Office add-in | Iced Canvas and a shared vector scene for SVG, vector PDF and raster PNG | 40 MB | 100 MB | 0.4 s | 206 MB | 226 MB | Yes, tested by running it: reshiki 0.14.0 from PyPI drew, converted and analysed caffeine. Opens the cited page. | Yes, according to the manual: Published npm API supports loading, saving, rendering and change callbacks. Opens the cited page. | Yes, according to the manual: Experimental headless conversion, rendering, composition and analysis. Opens the cited page. | Yes, according to the manual: Experimental stdio MCP; structure-level editing, no live GUI attachment. Opens the cited page. | Yes, according to the manual: Call mount(element); alternatively use <reshiki-editor> or embed() iframe. Opens the cited page. | npm package, web component, iframe, script tag@ameyanagi/reshiki | Browser preview. One editor per page, or use iframes. Printing, assistant and Office need the desktop app. | No: No stable extension interface. Opens the cited page. | Partly: Windows desktop Office OLE editing; Mac Office lacks this workflow. Opens the cited page. |
| MolDraw | 4.0 | Indigo, OpenChemLib | JavaScript | C++: Indigo WebAssembly chemistry; Java: OpenChemLib transpiled 3D chemistry; GLSL: 3D WebGL2 shaders | Not published | 3.5 MB page | Runs in the browser | 1.1 s | 826 MB, of which 351 MB is the empty browser | 787 MB, of which 351 MB is the empty browser | Not established | Not established | Partly: MolScript CLI complete; public package publication pending. Opens the cited page. | Yes, according to the manual: Hosted MCP creates, edits, converts, and exports; free account required. Opens the cited page. | Yes, according to the manual: Embed https://www.moldraw.com/embed in an iframe; no account required. Opens the cited page. | iframe | Only /embed supports cross-site framing. | Yes, according to the manual: Installable plugins; most require a free account. Opens the cited page. | Partly: Reopen exported pictures in MolDraw; Office add-ins unavailable. Opens the cited page. |
| Penzene | 2.0.0 | RDKit, ChemDraw file library, InChI | C++ | Python: Public package wrapping native engine; C: InChI identifier library | Custom Qt QPainter renderer; QSvgGenerator for SVG and QPdfWriter for PDF. | 46 MB | 103 MB | 0.4 s | 96 MB | 128 MB | Yes, according to the manual: Documented package edits, analyzes and renders drawings. Opens the cited page. | Not established | Yes, according to the manual: Headless rendering and batch descriptor exports. Opens the cited page. | Not established | Not established: Python renders static SVG; no embeddable editor widget documented. | Python renders static SVG; no embeddable editor widget documented. | GPL-3.0-or-later copyleft | Not established | Yes, according to the manual: Windows installer enables editable Word and PowerPoint OLE drawing objects. Opens the cited page. |
| Octet Draw | 1.1.0 | Indigo, OPSIN, InChI | TypeScript | Rust: Native shell, export and clipboard; JavaScript: OPSIN bundle and WebAssembly glue; C++: Indigo chemistry compiled to WebAssembly; C: InChI compiled into Indigo WebAssembly | Custom TypeScript SVG renderer; svg2pdf for PDF and resvg/tiny-skia for raster export | 33 MB | 44 MB | 0.4 s | 525 MB | 573 MB | Not established | Not established | Not established | Not established | Not established: Standalone desktop editor; no supported embedding integration found. | Standalone desktop editor; no supported embedding integration found. | None found | Not established | Yes, according to the manual: Round-trip editing via macOS PDF and Windows EMF clipboard metadata. Opens the cited page. |
| ChemDraft | 1.1.0 | RDKit, OpenChemLib, IsoSpec, OPSIN, InChI, Avogadro, Indigo | TypeScript | Rust: Tauri shell and native engine bridges; JavaScript: Frontend bundle and chemistry engines; C++: WASM chemistry and native 3D sidecar; Java: Bundled OPSIN and naming dependencies; Python: Optional naming and image recognition sidecars; C: InChI identifier library | Custom SVG page renderer; resvg raster export; svg2pdf.js and jsPDF vector PDF export | 80 MB | 122 MB | 0.4 s | 1342 MB | 1572 MB | Not established | Yes, according to the manual: TypeScript plugin SDK exposes document and chemistry operations. Opens the cited page. | Yes, according to the manual: Requires a source checkout. Opens the cited page. | Yes, according to the manual: Local stdio MCP server; requires a source checkout. Opens the cited page. | Not established: No documented embedding; editor-shell is an unpublished internal workspace package. | No documented embedding; editor-shell is an unpublished internal workspace package. | None found | Yes, tested by running it: Installed and ran official OPSIN and Orthonym plugins. Opens the cited page. | No: Editing structures inside Word and PowerPoint is planned for v2.0. Opens the cited page. |
| SketchIQ | dpl_44ysNf1Cbx9iepy8z4SrXP7… | Ketcher, RDKit, Indigo, OPSIN, Orthonym | TypeScript | JavaScript: Browser host and Raphael graphics; C++: WebAssembly chemistry and Indigo export rendering | Not published | 3.1 MB page | Runs in the browser | 0.9 s | 384 MB, of which 50 MB is the empty browser | 362 MB, of which 50 MB is the empty browser | Not established | Not established | Not established | Not established | No: X-Frame-Options DENY and CSP frame-ancestors 'none'; no editor SDK documented. Opens the cited page. | X-Frame-Options DENY and CSP frame-ancestors 'none'; no editor SDK documented. | None found | Not established | No: Pastes an image without editable chemical objects. Opens the cited page. |
| Covalent | 2uu6kqoryy | Not established | JavaScript | None | Custom SVG for 2D and SVG export; Canvas 2D for PNG and 3D; custom vector PDF writer. | 0.3 MB page | Runs in the browser | 2.0 s | 382 MB, of which 216 MB is the empty browser | 354 MB, of which 216 MB is the empty browser | Not established | Not established | Not established | Not established | No: CSP frame-ancestors 'self' and X-Frame-Options SAMEORIGIN block external framing. Opens the cited page. | CSP frame-ancestors 'self' and X-Frame-Options SAMEORIGIN block external framing. | None found | Not established | No: Word paste retains editable text; structures and arrows become pictures. Opens the cited page. |
| Reactio Draw | 1.10 | OpenChemLib, InChI, OPSIN, Octet Draw, openclatura, RDKit | JavaScript | Go: Windows/Linux wrappers and MCP server; Swift: macOS WebKit wrapper; Python: Optional naming and image recognition; Java: Desktop OPSIN fallback; C: InChI compiled to WebAssembly; VBA: Word add-in | Custom SVG renderer; HTML canvas for PNG/TIFF and custom vector EPS export | 24 MB | 27 MB | 0.3 s | 216 MB | 289 MB | Partly: Documented HTTP wrapper example; requires desktop API add-on. Opens the cited page. | Yes, according to the manual: Documented JavaScript postMessage API. Opens the cited page. | Yes, according to the manual: Renders and converts without a window; Linux needs a desktop session. Opens the cited page. | Yes, according to the manual: Separate AI-assistants add-on required. Opens the cited page. | Yes, according to the manual: Load web/index.html?embed in an iframe; exchange structures through postMessage. Opens the cited page. | iframe | AGPL-3.0-or-later | Not established | Yes, according to the manual: Editable Word drawings on Windows/Mac; cross-platform return uses copy/paste. Opens the cited page. |
| ChemEdit | 1.4.3 | Ketcher, Indigo, OpenChemLib, SmilesDrawer, Miew | TypeScript | JavaScript: Raphaël, SmilesDrawer, Miew and runtime; C++: Indigo chemistry and preview WebAssembly; C: InChI support compiled to WebAssembly; Java: OpenChemLib compiled to JavaScript | SVG through Ketcher/Raphael, Indigo exports, and SmilesDrawer; optional HTML canvas previews. | 277 MB | 595 MB | Not measured | 851 MB | 705 MB | Not established | Yes, according to the manual: Public typed editor, rendering and conversion API. Opens the cited page. | Not established | Not established | Yes, according to the manual: Install Obsidian plugin; open its integrated Ketcher drawing modal. Opens the cited page. | desktop widget | MIT; desktop Obsidian only. | Not established | Not established |
| Chem Illustrator | Hosted, 5 Nov 2026 | RDKit, OPSIN, OpenClatura, OpenChemLib, cdxmorph | TypeScript | Rust: Tauri shell and native integrations; C++: RDKit MinimalLib compiled to WebAssembly; Java: OPSIN/OpenChemLib compiled to JavaScript; Python: OpenClatura naming through Pyodide; JavaScript: Bundled chemistry loaders and engines | HTML Canvas 2D with custom SVG, EMF and PDF vector exporters | 1.6 MB page | Runs in the browser | 0.2 s | 522 MB, of which 269 MB is the empty browser | 495 MB, of which 269 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No documented embed API; hosted framing support remains unconfirmed. | No documented embed API; hosted framing support remains unconfirmed. | GPL-3.0-or-later | Not established | Yes, according to the manual: Windows desktop OLE objects support double-click editing. Opens the cited page. |
| ChemThisTry | 0.1.6 | Ketcher, Indigo, RDKit, 3Dmol.js, ASE | TypeScript | C++: Indigo exports and RDKit chemistry; Python: Desktop chemistry and scientific computing sidecar | SVG through Ketcher/Raphaël; Fabric.js canvas for figure composition | 281 MB | 912 MB | 0.5 s | 1558 MB | 1582 MB | Not established | Yes, according to the manual: Documented in-app plugin API; public repository omits implementation. Opens the cited page. | Not established | Yes, according to the manual: Documented MCP server reads and writes offline .ctt project files. Opens the cited page. | Not established: Hosted app lacks framing restrictions; supported iframe integration remains undocumented. | Hosted app lacks framing restrictions; supported iframe integration remains undocumented. | None found | Yes, according to the manual: Registers commands, viewers, export formats and menu contributions. Opens the cited page. | Partly: PowerPoint insertion uses PNG, without editable chemical structure data. Opens the cited page. |
| Chematic Draw | chematic 1.0.38 (build inde… | No third-party engine found | TypeScript | Rust: WebAssembly chemistry and SVG depiction; JavaScript: ChemSpider remote API host adapter | Custom HTML Canvas 2D on screen; chematic SVG depiction for exports, with Electron printToPDF for PDF. | 1.4 MB page | Runs in the browser | 0.1 s | 297 MB, of which 201 MB is the empty browser | 308 MB, of which 201 MB is the empty browser | Not established | Yes, according to the manual: Documented TypeScript/WASM bridge and public Web Component package. Opens the cited page. | Not established | Not established | Partly: Unpublished source package; basic editing only; host supplies controls. Opens the cited page. | web component@chematic/web | Unpublished source package; basic editing only; host supplies controls. | Yes, according to the manual: In-process extension registration only; third-party bundle loading is disabled. Opens the cited page. | Not established |
| Molecule Lab (The Freshman Mole) | 1.88.95 | Kekule.js Composer, Kekule.js, RDKit, Open Babel, 3Dmol.js | JavaScript | C++: RDKit and Open Babel WebAssembly | Kekule.js 2D canvas renderer; custom SVG exporter with HTML canvas PNG rasterization; Three.js and 3Dmol.js for 3D. | 3.6 MB page | Runs in the browser | 2.5 s | 827 MB, of which 435 MB is the empty browser | 845 MB, of which 435 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No embed documentation; headers alone cannot confirm iframe support. | No embed documentation; headers alone cannot confirm iframe support. | None found | Not established | Not established |
| FreeChemDraw | 3.18.0 | Ketcher, Indigo, 3Dmol.js | TypeScript | JavaScript: Workspace and 3Dmol.js viewer; C++: Indigo WebAssembly chemistry and image rendering; C: InChI via Indigo WebAssembly | Ketcher SVG/Raphael editor; Indigo image rendering | 9.5 MB page | Runs in the browser | 0.9 s | 563 MB, of which 49 MB is the empty browser | 467 MB, of which 49 MB is the empty browser | Not established | Not established | Not established | Yes, according to the manual: Separate MCP service; editor transfer requires manual SMILES/MOL import. Opens the cited page. | No: Hosted editor blocks external iframes; no documented embedding SDK. Opens the cited page. | Hosted editor blocks external iframes; no documented embedding SDK. | X-Frame-Options SAMEORIGIN | Not established | Not established |
| vibe-sketcher | 0.6.5 | Ketcher, RDKit, Indigo, OPSIN, InChI, CoordGen | TypeScript | Python: Chemistry server and SVG drawing; JavaScript: Electron desktop shell; C++: RDKit and Indigo WebAssembly chemistry; Rust: Publication PNG/PDF conversion via Python | Ketcher's canvas renderer; RDKit and custom SVG exports; resvg PNG and svg2pdf PDF. | 511 MB | 876 MB | 2.1 s | 411 MB | 453 MB | Yes, according to the manual: Documented vibesketcher SDK. Opens the cited page. | Not established | Yes, according to the manual: Headless conversion and rendering commands. Opens the cited page. | Yes, according to the manual: MCP tools and REST edit the shared document. Opens the cited page. | Not established: SDK edits documents; editor embedding is unverified. | SDK edits documents; editor embedding is unverified. | MPL-2.0 | Yes, according to the manual: InputWriter subclasses register extensions; no automatic plugin discovery. Opens the cited page. | Partly: EMF is editable vector artwork, without chemical object editing. Opens the cited page. |
| ErezDraw | 178f2b5 | RDKit, ChemCanvas, nmr-predictor, OpenChemLib | JavaScript | Python: Chemistry, import, desktop and server backends; C++: Native RDKit chemistry | Custom JavaScript/SVG | 21 MB | 661 MB | Not measured | 507 MB | 510 MB | Not established | Not established | Not established | Not established | Not established: Self-hosted web editor; no supported editor embedding interface confirmed. | Self-hosted web editor; no supported editor embedding interface confirmed. | GPL-3.0-or-later; cross-origin framing blocked | Not established | No: Word receives graphics; no ChemDraw OLE editing. Opens the cited page. |
| MolChart | v1.375 | RDKit, OpenChemLib | TypeScript | Python: FastAPI and RDKit server | SVG drawing canvas and SVG export; HTML canvas rasterization for PNG. | 2.3 MB page | Runs in the browser | 2.1 s | 284 MB, of which 184 MB is the empty browser | 310 MB, of which 184 MB is the empty browser | Not established | Not established | Not established | Yes, according to the manual: Streamable HTTP MCP interface provides drawing, editing and analysis tools. Opens the cited page. | Partly: ChatGPT viewer; manual editing requires full app. Opens the cited page. | iframe | ChatGPT viewer; manual editing requires full app | Not established | No: Office clipboard output is explicitly a bitmap, not editable chemistry. Opens the cited page. |
| MolCanvas | 0.4.0 | OpenChemLib | TypeScript | Rust: Tauri desktop shell and native commands; JavaScript: OpenChemLib chemistry library | Custom SVG renderer for screen and vector export; HTML canvas rasterization for PNG | 3.2 MB | 5.6 MB | 0.3 s | 328 MB | 364 MB | Not established | Not established | Not established | Not established | Not established: Hosted editor available; supported embedding integration unconfirmed. | Hosted editor available; supported embedding integration unconfirmed. | Permission required for modification, redistribution, or self-hosting. | Not established | Not established |
| Kendraw | 0.1.0 | Ketcher, Indigo, RDKit | TypeScript | Python: RDKit backend and additive NMR prediction; C++: Native and WebAssembly chemistry engines; JavaScript: Raphaël graphics and Miew 3D viewer | SVG through Ketcher/Raphael; Indigo generates PNG and SVG exports. | 8.9 MB page | Runs in the browser | 1.1 s | 828 MB, of which 526 MB is the empty browser | 854 MB, of which 526 MB is the empty browser | No: REST backend exists; native scripting SDK is explicitly absent. Opens the cited page. | Yes, according to the manual: TypeScript client drives conversion, properties and NMR services. Opens the cited page. | No: Headless conversion and batch CLI are listed as missing. Opens the cited page. | Not established | No: No supported embedding route; Docker explicitly denies framing. Opens the cited page. | No supported embedding route; Docker explicitly denies framing. | Docker denies framing; embedding API remains future work. | No: Plugin system is explicitly listed as missing. Opens the cited page. | No: Editable Office embedding is explicitly absent. Opens the cited page. |
| BoltzDraw | Ketcher 2.24.0 | Ketcher, RDKit, Indigo, Mol*, PLIP, ProLIF, WaterKit, Open Babel, PDBFixer, OpenMM, Meeko, MDAnalysis, Gemmi, UnipKa | TypeScript | JavaScript: Wrapper and molecule analysis interface; C++: Indigo exports and RDKit previews; Python: Local molecular analysis backend | SVG through Ketcher/Raphael; Indigo generates PNG/SVG exports; RDKit generates SVG molecule previews. | 2.2 MB page | Runs in the browser | 0.3 s | 373 MB, of which 50 MB is the empty browser | 346 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Embedded Ketcher API is accessible through its iframe. Opens the cited page. | Not established | Not established | Partly: Bundled Ketcher only (Apache-2.0); full wrapper embedding undocumented. Opens the cited page. | iframe | Bundled Ketcher only (Apache-2.0); full wrapper embedding undocumented. | Yes, according to the manual: Local modules add modes using the documented registerMode function. Opens the cited page. | Not established |
| Chemliora | 15.19.0 | OpenChemLib, GANSU Lite, MOrbVis | JavaScript | Java: OpenChemLib compiled to JavaScript; TypeScript: GANSU Lite and MOrbVis modules; Rust: GANSU Lite kernels (WebAssembly) | Custom SVG renderer; HTML canvas for PNG export | 0.9 MB page | Runs in the browser | 0.7 s | 689 MB, of which 430 MB is the empty browser | 711 MB, of which 430 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No documented embedding route; absent framing restrictions do not confirm support. | No documented embedding route; absent framing restrictions do not confirm support. | None found | Not established | Not established |
| Molbrett | 06dde1e7 | Ketcher, Indigo | TypeScript | JavaScript: Molbrett UI and Miew 3D viewer; C++: Indigo chemistry compiled to WebAssembly | Excalidraw HTML canvas whiteboard displaying SVG molecular images | 1.8 MB page | Runs in the browser | 2.5 s | 541 MB, of which 382 MB is the empty browser | 645 MB, of which 382 MB is the empty browser | Not established | Not established | Not established | Not established | No: Hosted X-Frame-Options DENY; no alternative embed route documented. Opens the cited page. | Hosted X-Frame-Options DENY; no alternative embed route documented. | Local deployment requires license; free for academia. | Not established | Not established |
| Zeanium Molecule Drawer | Hosted, 5 Nov 2026 | Not established | JavaScript | Source languages not publicly stated; generated JavaScript excluded. | SVG for 2D drawing and export; HTML canvas for PNG; Three.js/WebGL for 3D. | 0.8 MB page | Runs in the browser | 0.4 s | 478 MB, of which 271 MB is the empty browser | 682 MB, of which 271 MB is the empty browser | Not established | Not established | Not established | Not established | No: Hosted editor blocks framing; no documented SDK found. Opens the cited page. | Hosted editor blocks framing; no documented SDK found. | X-Frame-Options: DENY | Not established | Not established |
| Sciformation VectorMol | 2026-08-25 | No third-party engine found | JavaScript | None | Raphaël SVG graphics on screen and in SVG exports | 1.3 MB page | Runs in the browser | 4.9 s | 506 MB, of which 416 MB is the empty browser | 506 MB, of which 416 MB is the empty browser | Not established | Yes, according to the manual: JavaScript getMolRxnfile() and setMolRxnfile(String) exchange structures. Opens the cited page. | Not established | Not established | Yes, according to the manual: Iframe editor exposes getMolRxnfile()/setMolRxnfile(); embedded=true hides load/save controls. Opens the cited page. | iframe | CC-BY-NC-SA-3.0; commercial use requires an individual license | Not established | Not established |
| BondForge | commit b68de22 | RDKit, OPSIN | Python | C++: RDKit chemistry backend | Qt QGraphicsView/QGraphicsScene with QPainter; QSvgGenerator and QPdfWriter for vector exports | 0.1 MB | 1.4 GB | Not measured | 129 MB | 193 MB | Not established | Not established | No: Console entry point only launches the desktop GUI. Opens the cited page. | Not established | Not established: Standalone Qt application; no documented editor embedding interface found. | Standalone Qt application; no documented editor embedding interface found. | GPL-3.0-or-later | No: Plugin API is listed for future v1.0. Opens the cited page. | Not established |
| ChemDoodle Web Components | 11.0.0 | No third-party engine found | JavaScript | Java: Remote ChemDoodle chemistry services; GLSL: WebGL 3D rendering shaders | HTML5 Canvas 2D; WebGL for 3D; canvas2svg for proprietary SVG export | 1.4 MB page | Runs in the browser | 2.6 s | 175 MB, of which 50 MB is the empty browser | 171 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Documented JavaScript API. Opens the cited page. | Not established | Not established | Yes, according to the manual: Embed SketcherCanvas directly or through React wrapper; separately load core scripts. Opens the cited page. | npm package, script tagreact-chemdoodle | Core GPLv3 or proprietary license; React wrapper MIT. | Yes, according to the manual: Documented JavaScript plugin extension mechanism. Opens the cited page. | Not established |
| Chemeditor (Chemrise) | Ketcher 3.18.0 (build 2026-… | Ketcher, Indigo, Miew | TypeScript | JavaScript: Raphaël, CKEditor and Miew viewer; C++: Indigo chemistry and rendering (WebAssembly); C: InChI support compiled to WebAssembly | SVG through Ketcher/Raphaël; Indigo generates SVG and PNG exports | 1.2 MB page | Runs in the browser | 2.4 s | 836 MB, of which 391 MB is the empty browser | 786 MB, of which 391 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Hosted editor available; external embedding support unconfirmed. | Hosted editor available; external embedding support unconfirmed. | None found | Not established | Not established |
| MoleditPy | 5.1.3 | RDKit | Python | C++: Native RDKit chemistry | Qt QGraphicsScene/QPainter for 2D; QSvgGenerator for SVG; PyVista/VTK for 3D. | 180 MB | 738 MB | 11.0 s | 576 MB | 582 MB | Yes, according to the manual: Documented in-process Python PluginContext API drives the editor. Opens the cited page. | Not established | Partly: Launcher and plugin installer; no headless conversion or rendering. Opens the cited page. | Yes, according to the manual: Requires MCP Server plugin; controls the running editor. Opens the cited page. | Not established: Standalone Python package; no editor embedding API confirmed. | Standalone Python package; no editor embedding API confirmed.MoleditPy | LGPL-3.0-or-later | Yes, according to the manual: Python plugins extend menus, file handling, analysis and rendering. Opens the cited page. | Not established |
| ChemCanvas | 0.14.8 | None linkedPorted into its own code: OASA | Python | C++: Qt widgets and graphics via PyQt5 | Qt QGraphicsScene and QPainter; custom SVG serialization | 0.4 MB | 156 MB | Not measured | 87 MB | 96 MB | Not established | Not established | Not established | Not established | Not established: Standalone PyQt application; no editor integration API documented. | Standalone PyQt application; no editor integration API documented. | GPL-3.0-or-later copyleft | Not established | Not established |
| MolView.com | 2026-11-02 (5ecc001a) | Not established | Not published | JavaScript: Browser UI and OpenChemLib worker; C++: RDKit cleanup compiled to WebAssembly | In-house vector-outline rendering algorithms (vendor statement) | 1.4 MB page | Runs in the browser | 1.4 s | 357 MB, of which 50 MB is the empty browser | 632 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Documented JavaScript web-component API; subscription and client ID required. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load api.js with client ID, then insert <molview-sketcher>. Opens the cited page. | web component, script tag | Each user needs subscription, or license your production domain. | Not established | Not established |
| Ketcher | 3.18.0 | Indigo, Miew, InChI, Imago | TypeScript | C++: Indigo chemistry, WebAssembly or native; C: InChI reference library through Indigo; JavaScript: Raphaël graphics and Miew 3D viewer | SVG in the editor; Indigo renders generated PNG and SVG images. | 8.6 MB page | Runs in the browser | 0.9 s | 365 MB, of which 50 MB is the empty browser | 340 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual. Opens the cited page. | Not established | Not established | Yes, according to the manual: Mount React Editor with a structServiceProvider; or iframe standalone release. Opens the cited page. | npm package, iframeketcher-react | Apache-2.0; retain license and notices. | Yes, according to the manual: Custom toolbar buttons invoke application-defined handlers. Opens the cited page. | Not established |
| AI Chemical Drawing (CubicZnS) | 0.1.0 | Ketcher, Indigo | TypeScript | JavaScript: Raphaël SVG and Miew 3D; C++: Indigo chemistry and image exports; C: InChI compiled to WebAssembly | Ketcher SVG (Raphaël) in the browser; Indigo renders SVG/PNG exports | Not measured | 600 MB | Not measured | 964 MB, of which 375 MB is the empty browser | 893 MB, of which 375 MB is the empty browser | Not established | Yes, according to the manual: Technical specification documents the embedded Ketcher JavaScript API. Opens the cited page. | Not established | Not established | Not established: Embeds Ketcher internally; no host integration route documented. | Embeds Ketcher internally; no host integration route documented. | Host license unspecified; local application only | Not established | Not established |
| OpenReactions | Hosted, 5 Nov 2026 | OpenChemLib | JavaScript | None | HTML Canvas 2D for drawings; SVG for figures and vector export; jsPDF/svg2pdf for PDF. | 0.8 MB page | Runs in the browser | 0.4 s | 483 MB, of which 410 MB is the empty browser | 499 MB, of which 410 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Hosted editor found; no supported embedding route confirmed. | Hosted editor found; no supported embedding route confirmed. | None found | Not established | Not established |
| PyChem-Pro | 1.0.0 | ChemCanvas, OASA | Python | None | Qt QPainter for molecular views and raster exports; Qt QGraphicsScene sketcher; offline ray-tracing export. | 1.6 MB | 1.6 GB | Not measured | 469 MB | 487 MB | Yes, according to the manual: Public pychem package supports scripting without Qt. Opens the cited page. | Not established | Not established | Not established | Partly: Custom noncommercial; services prohibited; bundled OASA GPL-2.0-or-later; undocumented widget. Opens the cited page. | desktop widget | Custom noncommercial; services prohibited; bundled OASA GPL-2.0-or-later; undocumented widget. | Yes, according to the manual: Documented Python plugin API with analysis, visualization, and I/O plugins. Opens the cited page. | Not established |
| chemfig | 1.82 | No third-party engine found | TeX | None | TikZ/PGF vector graphics through TeX | 1.7 MB | 2.2 MB | Not measured | Paclitaxel compiled successfully; CLI exits, so persistent idle and loaded memory are unavailable. | Paclitaxel compiled successfully; CLI exits, so persistent idle and loaded memory are unavailable. | Not established | Not established | Yes, tested by running it: Rendered through a TeX compiler without an editor GUI. Opens the cited page. | Not established | Not established: TeX typesetting macros; no embeddable editor documented. | TeX typesetting macros; no embeddable editor documented. | None found | Yes, according to the manual: Custom arrow definitions and atom-rendering macros. Opens the cited page. | Not established |
| Molecule Builder (OvOHongYu) | 0.1.0 | RDKit | TypeScript | JavaScript: RDKit WebAssembly loader and bindings; C++: RDKit chemistry compiled to WebAssembly; C: InChI compiled into RDKit WebAssembly | Custom SVG rendering; serialized SVG, browser-print PDF, and HTML canvas rasterization for PNG. | 2.2 MB | 7.3 MB | Not measured | 508 MB, of which 418 MB is the empty browser | Idle is default ethane; no empty-document control; paclitaxel SMILES paste and MOL drop failed. | Not established | Yes, according to the manual: Documented TypeScript layout function. Opens the cited page. | Not established | Not established | Not established: Standalone React app; no supported embedding interface found. | Standalone React app; no supported embedding interface found. | None found | Partly: User-supplied HTTP prediction backends only. Opens the cited page. | Not established |
| KetchDraw | 2.24.0 | Ketcher, RDKit, Indigo | TypeScript | JavaScript: Wrapper and molecule analysis interface; C++: Indigo exports and RDKit previews | SVG in the Ketcher editor and RDKit.js previews; Indigo renders SVG/PNG exports | 8.9 MB page | Runs in the browser | 0.4 s | 662 MB, of which 423 MB is the empty browser | 734 MB, of which 423 MB is the empty browser | Not established | Yes, according to the manual: Underlying Ketcher JavaScript API is accessible through the iframe. Opens the cited page. | Not established | Not established | Partly: Bundled Ketcher only (Apache-2.0); full wrapper embedding undocumented. Opens the cited page. | iframe | Bundled Ketcher only (Apache-2.0); full wrapper embedding undocumented. | Not established | Partly: Imports embedded ChemDraw objects from PowerPoint; editable Office insertion unverified. Opens the cited page. |
| Chemvas | 0.28.0 | No third-party engine found | Python | None | Qt QPainter and QGraphicsScene; QSvgGenerator and QPdfWriter for vector export | 1.0 MB | 268 MB | Not measured | 115 MB | 130 MB | Yes, according to the manual: Documented Python CDXML serialization and typed label-binding functions. Opens the cited page. | Not established | Yes, according to the manual: Headless document composition, inspection, patching, layout and rendering. Opens the cited page. | Yes, according to the manual: Documented agent CLI accepts structured JSON composition and patch requests. Opens the cited page. | Not established: Desktop package; browser adapter retired, editor embedding undocumented. | Desktop package; browser adapter retired, editor embedding undocumented.chemvas | None found | Not established | Not established |
| Schrödinger Sketcher | Release 2026-4 (build 131) | RDKit, InChI | C++ | TypeScript: Browser React wrapper and API; JavaScript: Qt WebAssembly browser loader and glue; C: InChI identifier library | Qt QGraphicsScene and QPainter; QSvgGenerator for SVG and QImage for PNG | 19 MB | 48 MB | Not measured | 63 MB | 103 MB | Yes, according to the manual: Documented SIP wrapper sets and retrieves molecular structures. Opens the cited page. | Yes, according to the manual: Typed React/WASM API for structure and image exchange. Opens the cited page. | Yes, according to the manual: Bundled headless SMILES-to-HELM converter. Opens the cited page. | Not established | Yes, according to the manual: React iframe wrapper requires self-hosted WASM assets; native Qt SketcherWidget available. Opens the cited page. | npm package, iframe, desktop widget@schrodinger/sketcher | BSD-3-Clause; npm package targets authenticated GitHub Packages. | Not established | Not established |
| Molsketch | 0.8.4 | Open Babel | C++ | C: Optional native InChI library | Qt QPainter on QGraphicsScene; QSvgGenerator for SVG and QPrinter for printing. | 1.9 MB | 12 MB | Not measured | 273 MB | 276 MB | Not established | Not established | Not established | Not established | Partly: GPL-2.0-or-later; Qt/C++ integration undocumented. Opens the cited page. | desktop librarylibmolsketch | GPL-2.0-or-later; Qt/C++ integration undocumented. | Not established | Not established |
| Chemable | 1.1.9 | RDKit, 3Dmol.js, nmr-simulation | TypeScript | Python: Local RDKit geometry helper; C++: RDKit native chemistry core; JavaScript: 3D viewer and spectral simulation | Custom HTML Canvas 2D renderer and SVG exporter; 3Dmol.js for 3D views. | 179 MB | 500 MB | 0.4 s | 197 MB | 227 MB | Not established | Not established | Yes, according to the manual: Internal helper converts SMILES into 2D or 3D MOL blocks. Opens the cited page. | Not established | Not established: Standalone Electron app; no embeddable editor library confirmed. | Standalone Electron app; no embeddable editor library confirmed. | PolyForm Noncommercial license. | Not established | Not established |
| WaveSpeed AI Chemical Structure Drawer | cBQ3oDFlZ9g0696A_FKvj | RDKit, OpenChemLib, 3Dmol.js, InChI, CoordGen, maeparser | JavaScript | C++: RDKit WebAssembly chemistry and export rendering | Not published | 1.3 MB page | Runs in the browser | 0.2 s | 477 MB, of which 273 MB is the empty browser | 506 MB, of which 273 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No documented editor embed; headers alone do not confirm framing support. | No documented editor embed; headers alone do not confirm framing support. | None found | Not established | Not established |
| cDraw | 1.4.1 | MCDL, CDK, InChI, Beam | Java | C: Native InChI and Ghostscript libraries | Java2D in ChemPanel; custom SVG/PostScript generators; Ghostscript converts PostScript to PDF. | 9.6 MB | 9.8 MB | Not measured | 199 MB | 563 MB | Not established | Not established | Not established | Not established | Not established: Standalone Java editor; no project-offered embedding component confirmed. | Standalone Java editor; no project-offered embedding component confirmed. | AGPL-3.0-only | Not established | Not established |
| BondCraft | 0.2.1 | RDKit, CoordGen | JavaScript | C++: RDKit and CoordGen WebAssembly chemistry | HTML Canvas 2D for screen and PNG; custom SVG and PostScript EPS exporters | 3.2 MB page | Runs in the browser | 2.0 s | 752 MB, of which 410 MB is the empty browser | 773 MB, of which 410 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No embed documentation found; framing headers absent, functionality unconfirmed. | No embed documentation found; framing headers absent, functionality unconfirmed. | Free academic/personal use; proprietary. | Not established | Not established |
| JChemPaint | 3.2.0 | CDK, InChI | Java | C: Native InChI and macOS clipboard bridge; Swift: macOS native clipboard | CDK rendering via Java2D/AWT; CDK DepictionGenerator for SVG and PDF | 6.6 MB | 6.7 MB | Not measured | 166 MB | 397 MB | Not established | Not established | Not established | Not established | Yes, according to the manual: Add JChemPaintPanel(IChemModel) to Swing containers; getMenuForEmbedded supplies menus. Opens the cited page. | desktop widget | Java/Swing only; LGPL-2.1-or-later obligations. | Yes, according to the manual: Custom Java controller modules can receive editor mouse events. Opens the cited page. | Not established |
| Molsoft HTML5 Molecule Editor | v1.6.0 | Not established | JavaScript | C++: WebAssembly and asm.js chemistry core; C: Embedded InChI library | HTML canvas (Canvas 2D) | 1.5 MB page | Runs in the browser | 1.4 s | 121 MB, of which 50 MB is the empty browser | 115 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Documented ChemicalView constructor, import and export methods. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load moledit.js and instantiate ChemicalView inside a div. Opens the cited page. | script tag | Free academic/personal use; commercial licensing by inquiry | Not established | Not established |
| Molecule Clipboard | 6e00a7d | JSME, RDKit | Java (compiled to JavaScript); C++ (WebAssembly) | JavaScript: Application logic and export handling | JSME SVG editor; RDKit.js SVG depiction/export; HTML Canvas 2D for PNG. | 2.1 MB page | Runs in the browser | 0.1 s | 506 MB, of which 423 MB is the empty browser | 536 MB, of which 423 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Standalone HTML app; no documented embedding interface. | Standalone HTML app; no documented embedding interface. | None found | Not established | Not established |
| MolGLideX | ALPHA-0.0.2 | CDK | Kotlin | Java: CDK chemistry and Swing UI; C: Native InChI through JNA-InChI | Java Graphics2D; Apache Batik SVGGraphics2D for SVG output | 52 MB | 274 MB | Not measured | 341 MB | Published File > Load MOL route left canvas empty; paclitaxel could not load. | Not established | Not established | Not established | Not established | Not established: Desktop application; no supported embedding interface documented. | Desktop application; no supported embedding interface documented. | GPL-2.0; experimental prototype | Not established | Not established |
| SketchScape | 1.0 | RDKit | JavaScript | Python: Chemistry backend and HTTP API | SVG for 2D drawing; HTML Canvas 2D for PNG export and 3D viewing | Not measured | 135 MB | Not measured | 543 MB, of which 462 MB is the empty browser | SMILES paste produced zero atoms/bonds; README advertises typed SMILES; editor provides no SMILES input. | Not established | Not established | Not established | Not established | Not established: Standalone local server; no supported editor embedding documented. | Standalone local server; no supported editor embedding documented. | No license stated | Not established | Not established |
| ChemSema | Web build 8e6f995 (2026-09-… | InChIPorted into its own code: RDKit SMILES grammar | Rust | JavaScript: Editor interface and SVG DOM display; C: Bundled official InChI chemistry library | Custom Rust render primitives rendered as SVG DOM/SVG files; Win32 GDI EMF; resvg/tiny-skia CLI PNG. | 6.4 MB page | Runs in the browser | 0.1 s | 584 MB, of which 387 MB is the empty browser | 581 MB, of which 387 MB is the empty browser | Not established | Yes, according to the manual: Typed WASM API loads documents, executes commands, and renders SVG. Opens the cited page. | Yes, according to the manual. Opens the cited page. | Yes, according to the manual: Documented agent CLI with selectors, bundles, transactions, and JSONL sessions. Opens the cited page. | Not established: Office OLE opens a separate editor; no embedded editor documented. | Office OLE opens a separate editor; no embedded editor documented. | None found | Not established | Yes, according to the manual: Windows OLE objects support editing and storage write-back; beta. Opens the cited page. |
| Structura (chem-structura) | 0.8.0 | RDKit | TypeScript | C++: RDKit chemistry compiled to WebAssembly; Rust: Server SVG rasterization via resvg-js | Custom SVG scene renderer; React SVG on screen, HTML canvas for PNG output | 1.3 MB | 81 MB | Not measured | 474 MB, of which 420 MB is the empty browser | 527 MB, of which 420 MB is the empty browser | Not established | Yes, according to the manual. Opens the cited page. | Not established | Yes, according to the manual: Documented JSON editing operations shared with agents. Opens the cited page. | Yes, according to the manual: React StructuraEditor, ChemStructura.mount(), or editable <chem-molecule> via standalone script. Opens the cited page. | npm package, web component, script tagchem-structura | MIT | Not established | Partly: App compound tables require chem2office for editable ChemDraw objects in Word. Opens the cited page. |
| OpenChemLib JS editor | v9.25.2 | OpenChemLib editor, OpenChemLib | Java | JavaScript: Canvas editor integration and API wrappers; TypeScript: Shipped API type declarations | HTML canvas 2D on screen; OpenChemLib SVG rendering for vector output | 0.4 MB page | Runs in the browser | 0.2 s | 93 MB, of which 50 MB is the empty browser | 104 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Typed JavaScript API controls molecules, reactions and editor events. Opens the cited page. | Not established | Not established | Yes, according to the manual: Instantiate CanvasEditor(element), or registerCustomElement() and add <openchemlib-editor>. Opens the cited page. | npm package, web componentopenchemlib | BSD-3-Clause | Not established | Not established |
| MolSketch | build m0PiI1PnCmq4Tn2qz-p-a | RDKit, DECIMER | JavaScript | C++: RDKit WebAssembly chemistry; Python: DECIMER image recognition service | Custom HTML Canvas 2D renderer; custom SVG serialization and native PowerPoint shapes/text. | 2.9 MB page | Runs in the browser | 0.7 s | 226 MB, of which 50 MB is the empty browser | 215 MB, of which 50 MB is the empty browser | Not established | Not established | Not established | Not established | No: No supported embedding route found; hosted editor blocks external iframes. Opens the cited page. | No supported embedding route found; hosted editor blocks external iframes. | Cross-origin framing blocked by X-Frame-Options: SAMEORIGIN. | Not established | Yes, according to the manual: PowerPoint objects remain editable as text and shapes. Opens the cited page. |
| Dotmatics Elemental / Elemental Draw | 2016.4.49405 | No third-party engine found | JavaScript | C: iPad property calculations | Not published | 0.7 MB page | Runs in the browser | 2.5 s | 483 MB, of which 401 MB is the empty browser | 493 MB, of which 401 MB is the empty browser | Not established | Not established | Not established | Not established | Partly: Separate commercial JavaScript edition; deployment-specific license required. Opens the cited page. | script tag | Separate commercial JavaScript edition; deployment-specific license required | Not established | Not established |
| SketchEl 2 | 0.1.0 | WebMolKit Sketcher, WebMolKit | TypeScript | JavaScript: Electron desktop shell and menus | WebMolKit DrawMolecule/MetaVector; HTML Canvas 2D on screen and SVG for export | 1.2 MB | 593 MB | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: Separate WebMolKit: Apache-2.0; SketchEl2 application: GPL-3.0. Opens the cited page. | npm package, script tagwebmolkit | Separate WebMolKit: Apache-2.0; SketchEl2 application: GPL-3.0 | Not established | Not established |
| Kekule.js | 0.9.9.22022400 | Open Babel, Indigo, InChI | JavaScript | C++: Optional Open Babel/Indigo WebAssembly chemistry; C: Optional InChI WebAssembly engine; PHP: Optional Moodle integration plugins | HTML Canvas 2D; optional SVG/VML via Raphaël; Three.js for 3D | 0.6 MB page | Runs in the browser | 0.2 s | 207 MB, of which 50 MB is the empty browser | 191 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: JavaScript API creates, loads and controls the Composer editor. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load scripts/CSS; instantiate Kekule.Editor.Composer(div), or use <kekule-composer>. Opens the cited page. | npm package, web component, script tagkekule | MIT | Yes, according to the manual: Register custom editor interaction controllers through the documented API. Opens the cited page. | Not established |
| XDrawChem | 2.0.1 | Open Babel | C++ | C: Native InChI through Open Babel | Qt QPainter; custom legacy SVG/EPS writers; raster-backed PDF and newer SVG export | 40 MB | 111 MB | 0.4 s | 152 MB | Paclitaxel MOL rejected: file-type selection error; no MOL filter available. | Not established | Not established | Partly: PNG command-line mode still initializes and displays the GUI. Opens the cited page. | Not established | Not established: Standalone Qt editor; no supported embeddable widget or library found. | Standalone Qt editor; no supported embeddable widget or library found. | GPL-2.0-or-later | Not established | Not established |
| SketchEl | 1.62 | No third-party engine found | Java | None | Java2D Graphics2D for screen and PNG; custom SVG and OpenDocument vector exporters | 0.5 MB | 111 MB | Not measured | 113 MB | 118 MB | Not established | Partly: JavaScript molecule bridge requires a legacy Java applet. Opens the cited page. | Partly: Command-line startup opens GUI; no headless conversion/rendering command. Opens the cited page. | Not established | Partly: GPL-2.0-or-later; obsolete Java applet. Opens the cited page. | Java applet | GPL-2.0-or-later; obsolete Java applet | Not established | Not established |
| JSME Molecule Editor | v2024-04-29 | JME, OpenChemLib, InChI | Java (GWT-compiled to JavaScript) | JavaScript: GWT output and browser integrations; C: InChI compiled to browser asm.js | Browser SVG through JSApplet; optional OpenChemLib SVG export | 0.2 MB page | Runs in the browser | 0.1 s | 90 MB, of which 50 MB is the empty browser | 98 MB, of which 50 MB is the empty browser | Not established | Yes, according to the manual: Documented JavaScript constructors, methods and callbacks. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load jsme.nocache.js; construct JSApplet.JSME(containerId, width, height) inside jsmeOnLoad. Opens the cited page. | npm package, script tagjsme-editor | BSD-3-Clause; retain license notices. | Yes, according to the manual: JavaScript callbacks extend paste handling and structure-change behavior. Opens the cited page. | Not established |
| Chemifree | 0.1.0 | No third-party engine found | TypeScript | Rust: Chemistry, codecs and local API | SVG in the browser; scene/file rendering export is unimplemented. | 2.7 MB | 116 MB | Not measured | Not measured | Not measured | Not established | Not established | Yes, tested by running it: CLI version, capabilities and operation requests executed. Opens the cited page. | Yes, according to the manual: Documented HTTP and JSON-lines operation interface for external agents. Opens the cited page. | Not established: Local web workspace; no supported editor embedding interface documented. | Local web workspace; no supported editor embedding interface documented. | None found | Yes, according to the manual: Rust-only replacement of the CIP labeler through Application::with_cip_labeler. Opens the cited page. | No: Desktop and host integration unimplemented. Opens the cited page. |
| RadSketch | b7450e4 | No third-party engine found | JavaScript | None | HTML Canvas 2D with custom JavaScript screen and PNG renderers | 0.1 MB page | Runs in the browser | 0.2 s | 455 MB, of which 410 MB is the empty browser | 450 MB, of which 410 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Standalone app; no documented embedding interface found. | Standalone app; no documented embedding interface found. | No software license declared | Not established | No: Office receives a PNG image without editable molecular structure. Opens the cited page. |
| Ketcherails (ketcher-rails) | 0.1.12 | Ketcher, Open Babel, InChI | JavaScript | Ruby: Rails engine and server chemistry | Raphaël SVG/VML in the browser; Open Babel SVG and Inkscape template PNG conversion. | 8.2 MB | 693 MB | Not measured | 486 MB, of which 432 MB is the empty browser | 521 MB, of which 432 MB is the empty browser | Not established | Yes, according to the manual: Documented JavaScript getters and molecule setter. Opens the cited page. | Not established | Not established | Yes, according to the manual: Add ketcherails gem; iframe /ketcher; use contentWindow.ketcher for molecule exchange. Opens the cited page. | iframeketcherails | Rails 5.2; GPLv3 wrapper and AGPLv3 editor. | Not established | Not established |
| Butlerov | 0.1.6 | No third-party engine found | TypeScript | None | Konva.js on HTML canvas | 0.4 MB page | Runs in the browser | 0.3 s | 169 MB, of which 49 MB is the empty browser | 171 MB, of which 49 MB is the empty browser | Not established | Yes, according to the manual. Opens the cited page. | Not established | Not established | Yes, according to the manual: Instantiate MoleculeEditor with a div stage; npm or UMD script. Opens the cited page. | npm package, script tag@butlerov-chemistry/core | MIT license. | Not established | Not established |
| schematic | 0.1.0 (ede2ccf) | No third-party engine found | TypeScript | None | SVG DOM renderer and SVG export; HTML Canvas 2D rasterization for PNG. | 0.0 MB page | Runs in the browser | 0.1 s | 389 MB, of which 381 MB is the empty browser | 392 MB, of which 381 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Standalone application; no documented editor embedding route. | Standalone application; no documented editor embedding route. | No declared source license. | Not established | Not established |
| ChemMD | 0.1.0 (2768408) | No third-party engine found | JavaScript | None | Custom SVG renderer; HTML canvas rasterizes PNG exports | Not measured | 0.2 MB | Not measured | 493 MB, of which 450 MB is the empty browser | 547 MB, of which 450 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Standalone browser app; no supported embedding interface found. | Standalone browser app; no supported embedding interface found. | All rights reserved; reuse requires written permission. | Not established | Not established |
| WebMolKit | 2.0.11 | No third-party engine found | TypeScript | None | In-house MetaVector renderer using HTML Canvas 2D and SVG. | 2.2 MB page | Runs in the browser | 0.3 s | 143 MB, of which 53 MB is the empty browser | 140 MB, of which 53 MB is the empty browser | Not established | Yes, according to the manual: Documented sketcher and clipboard API examples. Opens the cited page. | Not established | Not established | Yes, according to the manual: Import Sketcher or load webmolkit.js; setup(), then render into container. Opens the cited page. | npm package, script tagwebmolkit | Apache-2.0 | Yes, according to the manual: SketcherPlugins callbacks extend paste handling and fragment composition. Opens the cited page. | Not established |
| rdEditor | 0.5.1 | RDKit | C++ | Python: Editor and RDKit bindings | RDKit MolDraw2DSVG generates SVG, displayed by Qt QSvgWidget. | 0.4 MB | 1.4 GB | Not measured | 109 MB | 115 MB | Yes, according to the manual: Widget properties and signals drive molecule editing and display. Opens the cited page. | Not established | No: rdEditor always launches QApplication; no headless conversion or rendering. Opens the cited page. | Not established | Yes, according to the manual: Import rdeditor.molEditWidget.MolEditWidget; add to PySide6 layout and connect molChanged. Opens the cited page. | desktop widgetrdeditor | LGPL-3.0; requires PySide6 desktop GUI. | Not established | Not established |
| ChemCanvasJS | 0.9 (aa2b985) | Not established | CoffeeScript | JavaScript: Compiled runtime and Paper.js graphics | Paper.js on HTML5 Canvas, with modified Paper.js SVG export | Not measured | 1.8 MB | Not measured | 492 MB, of which 303 MB is the empty browser | 348 MB, of which 303 MB is the empty browser | Not established | Partly: Canvas constructor example only; no public API reference. Opens the cited page. | Not established | Not established | Partly: MIT; triple bonds unimplemented; example references missing main.js. Opens the cited page. | script tag | MIT; triple bonds unimplemented; example references missing main.js | Not established | Not established |
| Chemical Structure Editor (CSE) | c1570bab | No third-party engine found | JavaScript | None | Native SVG DOM for on-screen drawing and SVG export | 0.1 MB page | Runs in the browser | 0.1 s | 388 MB, of which 356 MB is the empty browser | Published MOL import failed; no paclitaxel drawing. | Not established | Partly: Console helpers expose calculations and display toggles, not drawing operations. Opens the cited page. | Not established | Not established | Not established: Standalone app; no documented embedding interface found. | Standalone app; no documented embedding interface found. | No software license declared | Not established | Not established |
| Kemia | v0.2-79-gceacc9a | None linkedPorted into its own code: CDK, MX | JavaScript | None | Google Closure goog.graphics with SVG, VML, or HTML canvas backends | 0.1 MB page | Runs in the browser | 0.1 s | 494 MB, of which 309 MB is the empty browser | 342 MB, of which 309 MB is the empty browser | Not established | Yes, according to the manual: Documents parsing, coordinate generation, and editor initialization. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load kemia.js; instantiate kemia.controller.ReactionEditor and register editing plugins. Opens the cited page. | script tag | Apache-2.0; pre-alpha | Yes, according to the manual: Documented plugin base class with event and command extension hooks. Opens the cited page. | Not established |
| JMolDraw | V0.5 | No third-party engine found | Java | None | Java2D Graphics2D; Apache Batik for SVG; Java ImageIO for PNG/JPEG | 1.2 MB | 163 MB | Not measured | 182 MB | 260 MB | Not established | Yes, according to the manual: applet.txt documents JavaScript control through a legacy Java applet. Opens the cited page. | No: main ignores arguments and always opens the GUI. Opens the cited page. | Not established | No: Applet opens separate window; no inline integration supported. Opens the cited page. | Java applet | GPL-2.0-or-later | Not established | Not established |
| MolTouch | v1.0.0 | No third-party engine found | JavaScript | HTML/CSS provide interface markup and styling; PHP handles downloads. | HTML5 Canvas 2D; PNG output uses canvas.toDataURL. | 0.4 MB page | Runs in the browser | 0.2 s | 459 MB, of which 435 MB is the empty browser | 482 MB, of which 435 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: No embedding documentation; hosted framing headers do not block embedding. | No embedding documentation; hosted framing headers do not block embedding. | License grant unclear | Not established | Not established |
| Chemeditor (Chemie-Lernprogramme) | sha256:4c8fae476591 | No third-party engine found | JavaScript | None | Browser text rendering; HTML Canvas 2D text rendering for PNG export | 1.0 MB page | Runs in the browser | 3.2 s | 243 MB, of which 203 MB is the empty browser | SMILES remains plain text; paclitaxel drawing unsupported. | Not established | Not established | Not established | Not established | Yes, according to the manual: Paste supplied data-URI iframe snippet into Moodle's HTML editor. Opens the cited page. | iframe | GPLv3 code; supplied templates also labeled CC BY-NC 4.0. | Not established | Partly: Copies editable Unicode text, without an embedded chemical structure object. Opens the cited page. |
| SketChem | 6ed8c631 | Kekule.js, Open Babel, Indigo | TypeScript | JavaScript: Kekule.js chemistry and format integration; C++: Open Babel and Indigo WebAssembly chemistry; C: InChI compiled into Open Babel WebAssembly | Custom SVG drawing | 4.7 MB page | Runs in the browser | 0.2 s | 546 MB, of which 443 MB is the empty browser | 565 MB, of which 443 MB is the empty browser | Not established | Not established | Not established | Not established | Not established: Standalone React application; supported editor embedding remains unconfirmed. | Standalone React application; supported editor embedding remains unconfirmed. | MIT | Not established | Not established |
| vue-chemdraw (0chem) | L1XkLMu0 | No third-party engine found | JavaScript | None | Custom SVG DOM renderer (npm 1.4.6) | 0.2 MB page | Runs in the browser | 1.4 s | 492 MB, of which 417 MB is the empty browser | Idle contains built-in sample; New ineffective; MOL import failed. | Not established | Partly: Vue registration documented; structure-control API documentation unavailable. Opens the cited page. | Not established | Not established | Yes, according to the manual: Register Vue plugin with app.use(chemDraw); insert <draw-0chem> component. Opens the cited page. | npm packagevue-chemdraw | Repository GPL-3.0 conflicts with npm ISC metadata. | Not established | Not established |
| ChemWriter | 2.15.7 | No third-party engine found | JavaScript | Java: Optional legacy clipboard applet | Custom JavaScript renderer using SVG | 0.7 MB page | Runs in the browser | 4.0 s | 547 MB, of which 464 MB is the empty browser | 538 MB, of which 464 MB is the empty browser | Not established | Yes, according to the manual: loadEditor, getMolfile and configurable drawing settings. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load SDK JavaScript and CSS, then instantiate editor in HTML container. Opens the cited page. | script tag | Commercial license required for production deployment | Not established | Not established |
| MCDL Java Chemical Structure Editor | Not published | No third-party engine found | Java | JavaScript: Applet host interaction | Custom DrawMolecule renderer using Java AWT Graphics; companion converter renders BufferedImage images to GIF. | 0.3 MB | 173 MB | Not measured | 89 MB | Paclitaxel SMILES paste ignored; canvas stayed empty. | Not established | Yes, according to the manual: Example JavaScript calls the applet's getMCDL and setMCDL methods. Opens the cited page. | Not established | Not established | Partly: Requires obsolete Java browser plug-in. Opens the cited page. | Java applet | Requires obsolete Java browser plug-in | Not established | Not established |
| Glass | Hosted, 5 Nov 2026 | No third-party engine found | JavaScript | None | HTML5 Canvas 2D | 2.2 MB page | Runs in the browser | 0.3 s | 72 MB, of which 50 MB is the empty browser | MOL import failed: importMol is not a function; molecule absent. | Not established | Yes, according to the manual: Documented JavaScript constructor and configuration options. Opens the cited page. | Not established | Not established | Partly: Current main has syntax error; pin earlier revision. Opens the cited page. | script tag | Current main has syntax error; pin earlier revision. | Partly: Custom disconnection rules accepted through the JavaScript API. Opens the cited page. | Not established |
| molsketch-cljs | sha256:322271d1520e | No third-party engine found | ClojureScript | None | Browser SVG elements generated by custom ClojureScript drawing code | 0.1 MB page | Runs in the browser | 0.1 s | 220 MB, of which 202 MB is the empty browser | Default example; synthetic SMILES paste failed; no empty-document command. | Not established | Not established | Not established | Not established | Not established: Standalone ClojureScript app; no documented embedding interface. | Standalone ClojureScript app; no documented embedding interface. | None found | Not established | Not established |
| MolPad | v3.2.13 | @chemistry/molecule, @chemistry/elements | TypeScript | None | SVG elements generated by React | 0.6 MB page | Runs in the browser | 2.6 s | 163 MB, of which 50 MB is the empty browser | Published MOL paste produced no structure; no import control. | Not established | Yes, according to the manual: React ref API exposes loadMolecule and getJmol. Opens the cited page. | Not established | Not established | Yes, according to the manual: Render MolPad React component; ref handles import and export. Opens the cited page. | npm package@chemistry/molpad | None found | Not established | Not established |
| BKChem Python 3 Modernized | Not published | BKChem, OASA, InChI | Python | None | Tkinter Canvas; custom SVG writer; Cairo and Piddle export backends | 3.1 MB | 29 MB | Not measured | Not measured | Not measured | Yes, according to the manual: Legacy API documentation; Python 2 examples require adaptation. Opens the cited page. | Not established | Partly: Batch scripts hide the window but still require Tk/X. Opens the cited page. | Not established | Not established: External scripting launches its own Tk window; embedding unconfirmed. | External scripting launches its own Tk window; embedding unconfirmed. | GPL-2.0-or-later | Yes, according to the manual: XML descriptors register Python script and drawing-mode extensions. Opens the cited page. | Not established |
| ChemDoodle 2D | 12.12.1 | OPSIN | Java | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: Separate Web Components product; GPLv3 or proprietary license. Opens the cited page. | script tag | Separate Web Components product; GPLv3 or proprietary license | Not established | Yes, according to the manual: Windows OLE; macOS copy-and-paste round-trip workflow. Opens the cited page. |
| LabCanvas Figure Editor / MolDraw | Not published | Not established | JavaScript | C++: Indigo chemistry compiled to WebAssembly | HTML canvas 2D and a custom SVG serializer in MolDraw | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Yes, according to the manual: Pro; MCP server supports figure editing; vendor claim. Opens the cited page. | Yes, according to the manual: Embed https://www.moldraw.com/embed in an iframe; use height="640" and width="100%". Opens the cited page. | iframe | Free hosted editor; only /embed permits cross-site framing. | Yes, according to the manual: Installable plugins; most require a free account. Opens the cited page. | Partly: Reopen embedded drawing in MolDraw; no Office add-in. Opens the cited page. |
| Marvin Desktop Suite / MarvinSketch | 26.1.4 | InChI, RInChI | Java | C: Native InChI library | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Yes, according to the manual: Bundled Molconvert converts structures and renders images. Opens the cited page. | Not established | Yes, according to the manual: Instantiate MSketchPane; add it to a Swing JPanel. Opens the cited page. | desktop widgetcom.chemaxon:chemaxon-marvin-classic | Proprietary license; Java Swing host required. | Yes, according to the manual: Custom Java Calculator Plugins and external services. Opens the cited page. | Yes, according to the manual: Windows OLE; editing requires installed Marvin with OLE support. Opens the cited page. |
| ChemDraft (元素智研) | build 3d096b252fa8 | Not established | C++ | QML: Qt Quick user interface; JavaScript: WebAssembly browser loader; C: InChI code compiled to WebAssembly | Not published | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: Vendor-arranged integration; commercial use requires separate authorization. Opens the cited page. | Contact vendor for JavaScript editor integration; public setup instructions unavailable. | Vendor-arranged integration; commercial use requires separate authorization. | Not established | Yes, according to the manual: Double-click embedded Office/WPS structures to edit and update them. Opens the cited page. |
| InDraw | 8.0 | MolPad, RDKit, Indigo, InChI | JavaScript | Not established | Not published | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Internal iframe bridge exists; public embedding support remains unconfirmed. | Internal iframe bridge exists; public embedding support remains unconfirmed. | None found | Not established | Yes, according to the manual: Free Word copies watermarked; Professional removes watermark. Opens the cited page. |
| Marvin JS | 25.3.0 | Not established | Java | JavaScript: Compiled browser runtime and integration API; C: Remote native InChI conversion | HTML5 canvas | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Yes, according to the manual: JavaScript API controls embedded editors. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load editor.html in an iframe; control through the JavaScript helper API. Opens the cited page. | iframe | Commercial license required; new sales end December 2026. | Yes, according to the manual: Custom buttons invoke user-defined JavaScript functionality. Opens the cited page. | Partly: Editable MOL/MRV transfer requires separate paid JChem for Office. Opens the cited page. |
| BKChem | 0.14.0-pre4 | OASA, InChI | Python | C: Bundled Windows InChI executable; Tcl: Tk GUI runtime | Tkinter Canvas on screen; custom SVG serialization and Cairo PDF/PNG export. | 1.0 MB | 11 MB | Not measured | Not measured | Not measured | Yes, according to the manual: Documented external Python control; API described as unstable. Opens the cited page. | Not established | Partly: Batch conversion hides windows but requires X on Unix. Opens the cited page. | Not established | Not established: External Python API controls standalone application; editor embedding remains unconfirmed. | External Python API controls standalone application; editor embedding remains unconfirmed. | GPL-2.0-or-later | Yes, according to the manual: XML descriptors and Python script or mode extensions. Opens the cited page. | Not established |
| BIOVIA Draw | BIOVIA Draw 2026 | OpenEye Lexichem | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Yes, according to the manual: Enterprise DrawBridge; JavaScript examples invoke installed desktop Draw. Opens the cited page. | Not established | Not established | Partly: Proprietary; embedded viewer only; editing opens separate desktop Draw. Opens the cited page. | desktop widget | Proprietary; embedded viewer only; editing opens separate desktop Draw. | Yes, according to the manual: Documented .NET API supports custom C# and VB add-ins. Opens the cited page. | Yes, according to the manual: Re-editable OLE objects retain updated drawing styles. Opens the cited page. |
| ChemWindow (KnowItAll ChemWindow Edition) | 2026.1 | OPSIN | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Office OLE objects only, listed under Editable in Office. No developer route found. | Office OLE objects only, listed under Editable in Office. No developer route found. | None found | Not established | Yes, according to the manual: Pasted Office objects reopen in ChemWindow for editing. Opens the cited page. |
| Chemistry Draw | chemistry-draw-v0.1.6 | Ketcher, Indigo, Miew, Imago | TypeScript | Rust: Desktop shell and native chemistry service; C++: Native Indigo chemistry/rendering and Imago recognition; JavaScript: Raphaël graphics and Miew 3D | SVG through Raphael on screen; native Indigo Renderer for image files. | 2.1 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Desktop wrapper; no project-provided embedding route confirmed. | Desktop wrapper; no project-provided embedding route confirmed. | None found | Not established | Not established |
| Zoho ChemStudio | Not published | Not established | Not published | Not established | Not published | 323 MB | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: Zoho Writer only; reusable embedding API unconfirmed. Opens the cited page. | Use ChemStudio's Zoho Writer extension to draw inside Writer. | Zoho Writer only; reusable embedding API unconfirmed | Not established | Not established |
| GChemPaint | v0.14.17 | Open Babel | C++ | C: Periodic table and template widgets | Cairo through the custom GCCV canvas | 5.9 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: GPL-3.0-or-later; GOffice rendering only; editing opens separate window. Opens the cited page. | desktop widgetlibgcu0v5 | GPL-3.0-or-later; GOffice rendering only; editing opens separate window | Yes, according to the manual: Documented C++ plugins can add tools and UI elements. Opens the cited page. | Not established |
| KingDraw | 5.0 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Partly: Separate legacy web SDK; developer platform currently suspended. Opens the cited page. | Not established | Not established | Not established: Historical JS editor existed; current embedding support cannot be confirmed. | Historical JS editor existed; current embedding support cannot be confirmed. | Developer platform suspended; legacy SDK documentation unavailable. | Not established | Yes, according to the manual: Windows Office objects reopen in KingDraw and synchronize edits. Opens the cited page. |
| ChemPencil | 2.1.0 | InChI | Not published | C: Official InChI native library | Not published | 126 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Desktop exports and clipboard documented; no supported editor embedding confirmed. | Desktop exports and clipboard documented; no supported editor embedding confirmed. | None found | Not established | Not established |
| ACD/ChemSketch | 2025 | Not established | Not published | C: Native InChI chemistry library; ChemBasic: Optional bundled automation scripts | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: OLE objects supported; in-place editor hosting unconfirmed. | OLE objects supported; in-place editor hosting unconfirmed. | Discontinued; unavailable to new customers | Yes, according to the manual: Add-On Organizer installs ChemSketch extensions. Opens the cited page. | Not established: OLE embedding documented; re-editing not explicitly verified. |
| Ferrum Chemical Forge | commit 349438d | RDKit, InChI | Rust | Python: Qt desktop frontend; C++: Native RDKit chemistry adapter | Custom Rust render plans replayed by Qt QPainter; Rust SVG, tiny-skia PNG, and pdf-writer PDF export. | Not measured | Not measured | Not measured | Not measured | Not measured | Yes, according to the manual: Documented ferrum_chem operation protocol binding. Opens the cited page. | Not established | Yes, according to the manual: Inspect, validate, render, convert, and protocol commands without the GUI. Opens the cited page. | Not established | Not established: Public Python API handles documents; Qt editor bridge is private. | Public Python API handles documents; Qt editor bridge is private. | AGPL-3.0-only editor; LGPL-3.0-only engine | No: Third-party execution explicitly dropped; built-in actions remain. Opens the cited page. | Not established |
| Marvin Cloud | Not published | Not established | JavaScript | Java: Remote services and GWT valence source | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | No: Cloud explicitly excludes API access. Opens the cited page. | No: Cloud explicitly excludes API access; separate enterprise product supports JavaScript. Opens the cited page. | Not established | Not established | No: Cloud FAQ explicitly excludes integration and API access. Opens the cited page. | Cloud FAQ explicitly excludes integration and API access. | Integration requires separate Marvin Enterprise or Partners edition | Not established | No: Cloud excludes integrations; Office integration requires enterprise Marvin. Opens the cited page. |
| Chem4Word | V3.3.17 | No third-party engine found | C# | C: Native SQLite structure library storage | WPF DrawingVisual/DrawingContext in the editor; OOXML DrawingML in Word documents | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Word add-in launches modal editor; reusable editor SDK unconfirmed. | Word add-in launches modal editor; reusable editor SDK unconfirmed. | Apache-2.0; bundled ChemDoodle Web files require GPL-3.0 compliance. | Yes, according to the manual: C# plugin contracts and a commented example searcher implementation. Opens the cited page. | Yes, according to the manual: Word structures retain CML and reopen in the editor. Opens the cited page. |
| AtomLens | 3.1 | CDK, OPSIN, SMSDProSwift, InChI, ChemDataExtractor2, DECIMER Image Segmentation | Swift | C: Vendored official InChI library | Not published | 585 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Yes, according to the manual: macOS bundled MCP helper supports repository search, modification, and export. Opens the cited page. | Not established: Native app; no documented embeddable editor SDK found. | Native app; no documented embeddable editor SDK found. | None found | Not established | Not established |
| Chemtool | 1.6.14 | Babel, Open Babel | C | None | Custom C drawing with GDK primitives and Pango text; custom SVG/XFig export; fig2dev for PNG/EPS. | 0.8 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Yes, according to the manual: Batch conversion with chemtool -bg; still requires GTK/X11. Opens the cited page. | Not established | Not established: GTK executable documented; no supported embeddable editor interface confirmed. | GTK executable documented; no supported embeddable editor interface confirmed. | GPL-2.0-or-later | Not established | Not established |
| Lhendraw | v0.4.5 | No third-party engine found | C++ | None | Custom software rasterizer using SDL surfaces or Win32/GDI; custom SVG, PostScript and PNG writers. | 0.5 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Yes, according to the manual: Headless conversion and rendering documented with command-line examples. Opens the cited page. | Not established | Not established: Desktop executables documented; no offered embedding component confirmed. | Desktop executables documented; no offered embedding component confirmed. | AGPL-3.0 | Not established | Not established |
| JSDraw | 7.4.0.52930 | Not established | JavaScript | Not established | SVG; legacy VML fallback documented | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Yes, according to the manual: Documented JavaScript API. Opens the cited page. | Not established | Not established | Yes, according to the manual: Load SDK scripts; JSDraw2.Editor converts an HTML DIV into an editor. Opens the cited page. | script tag | Commercial license required; free for education. | Yes, according to the manual: Toolbar plugins provide an icon, tooltip and click callback. Opens the cited page. | Not established |
| ChemCAD | Not published | RDKit, CoordGen, OPSIN | C++ | GLSL: Fluid rendering and compute shaders | Custom Dear ImGui ImDrawList drawing via OpenGL; RDKit MolDraw2DSVG for SVG; framebuffer capture for PNG | 1.9 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: README says an ImGui app can host it, with no steps. C++20 source build. Opens the cited page. | desktop library | README says an ImGui app can host it, with no steps. C++20 source build. | Yes, according to the manual: Data-only extension mechanism: add reaction templates as JSON. Opens the cited page. | Not established |
| MoleculeSketch | 2.9.6 | Not established | Objective-C | Objective-C: Native application code; Swift: Application code and SwiftUI interface | Not published | 24 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: PDF copying exports graphics; no working editor embedding confirmed. | PDF copying exports graphics; no working editor embedding confirmed. | None found | Not established | Not established |
| FX ChemStruct / FX Draw Chemical Structures | V26.10.25 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: OLE objects launch separate editor; in-place embedding unconfirmed. | OLE objects launch separate editor; in-place embedding unconfirmed. | None found | Not established | Yes, according to the manual: Word for Windows OLE; Classic Edition is deprecated. Opens the cited page. |
| Chemistry 4-D Draw | 9.0 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: OLE reopens desktop app; supported in-host editor embedding unconfirmed. | OLE reopens desktop app; supported in-host editor embedding unconfirmed. | None found | Not established | Yes, according to the manual: Vendor claim: Windows Word OLE objects reopen for editing. Opens the cited page. |
| ChemStitch | Not published | Ketcher, RDKit, OPSIN | TypeScript | Python: Remote FastAPI chemistry backend; C++: RDKit chemistry backend; JavaScript: Raphaël SVG graphics | Not published | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | No: Hosted app blocks framing; no supported editor embedding package documented. Opens the cited page. | Hosted app blocks framing; no supported editor embedding package documented. | X-Frame-Options DENY | Not established | Not established |
| BondDraw | Not published | No third-party engine found | ArkTS | C++: Chemistry algorithms and file formats | ArkUI CanvasRenderingContext2D; PNG export captures the canvas | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Standalone HarmonyOS application; no supported editor embedding interface found. | Standalone HarmonyOS application; no supported editor embedding interface found. | License conflict: manifest LGPL-2.1-or-later, documentation Apache-2.0. | No: Documentation explicitly states no plugin mechanism. Opens the cited page. | Not established |
| ChemGraphic 2 | 1.0.3 | xtb | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: No editor SDK or embedding method documented. | No editor SDK or embedding method documented. | Proprietary subscription; embedding terms undisclosed | Not established | Not established |
| EasyChem | 0.6 | No third-party engine found | C | None | GDK drawing primitives with Pango text; custom EPS/XFig export and Ghostscript PDF conversion | 1.9 MB | 4.4 MB | Not measured | Not measured | Not measured | Not established | Not established | No: Command line opens files in GUI; no headless conversion. Opens the cited page. | Not established | Not established: Standalone GTK editor; no reusable editor API confirmed. | Standalone GTK editor; no reusable editor API confirmed. | GPL-2.0-or-later | Not established | Not established |
| MolSketchGo | 0.0.7 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Mobile app; no supported embedding route located. | Mobile app; no supported embedding route located. | Personal, non-commercial use unless separately agreed in writing | Not established | Not established |
| MyChemise | Not published | Not established | Java | JavaScript: Applet launch and resizing | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Partly: Requires obsolete Java browser plug-in; redistribution license unverified. Opens the cited page. | Java applet | Requires obsolete Java browser plug-in; redistribution license unverified | Not established | Not established |
| CyBy-Draw | Not published | idris2-chem | Idris | JavaScript: Word add-in browser API bindings | SVG generated by a custom Idris renderer | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Yes, according to the manual: Use molWidget from cyby-draw; compile to JavaScript and include generated script. Opens the cited page. | script tagcyby-draw | Requires Idris2 compilation; BSD-3-Clause | Yes, according to the manual: Idris Extension hooks customize export, toolbar buttons and event handling. Opens the cited page. | Yes, according to the manual: Word add-in reopens and replaces structures using embedded MOL metadata. Opens the cited page. |
| Elk_Draw RDKit | v0.9.7 | RDKit, RingDecomposerLib | C# | C++: RDKit native descriptor calculations | SkiaSharp (Skia) | 19 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Word OLE roundtrip exists; editor running inside Word remains unverified. | Word OLE roundtrip exists; editor running inside Word remains unverified. | Windows; commercial use requires permission | Not established | Yes, according to the manual: Double-click inserted Word structures to edit in Elk_Draw; vendor claim. Opens the cited page. |
| Chem+ Molecular Structure Editor | build XzRhYnz8AkurH6Tiy6Rfq | Not established | TypeScript | JavaScript: React interface and Raphaël runtime; C++: Indigo chemistry and export WebAssembly | Not published | Not measured | Runs in the browser | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | No: CSP frame-ancestors self and X-Frame-Options SAMEORIGIN block external frames. Opens the cited page. | CSP frame-ancestors self and X-Frame-Options SAMEORIGIN block external frames. | External framing blocked by CSP and X-Frame-Options. | Not established | Not established |
| MolPrime+ | 1.2.7 | MMDS sketcher | Objective-C | None | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Standalone iOS app; no documented editor embedding route confirmed. | Standalone iOS app; no documented editor embedding route confirmed. | None found | Not established | Not established |
| MolGenDraw | v1.176 | RDKit | C++ | Python: Application and custom Pillow 3D renderer; Java: Local OPSIN name parsing | Not published | 150 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Standalone Windows executable; no embedding interface documented. | Standalone Windows executable; no embedding interface documented. | Proprietary freeware; all rights reserved | Not established | Not established |
| Chirys Draw | 2.5 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Developer link returns 404; embedding mechanism unconfirmed. | Developer link returns 404; embedding mechanism unconfirmed. | None found | Not established | Not established |
| ChemScribble | 1.1.0 | ChemDoodle | Java | Java: Desktop application; JavaScript: Bundled ChemDoodle Web Components | Not published | 109 MB | 222 MB | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Desktop application; no editor embedding route documented. | Desktop application; no editor embedding route documented. | Commercial license; web version remains under development. | Not established | Not established |
| Chem Sketcher (Non_REM.Persona Laboratory) | Not published | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Standalone HTML download; no documented embedding API or component found. | Standalone HTML download; no documented embedding API or component found. | Redistribution license unspecified. | Not established | Not established |
| Structo | Not published | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Android app; no editor embedding interface documented. | Android app; no editor embedding interface documented. | None found | Not established | Not established |
| Chemograph Plus | Not published | Not established | C++ | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Word OLE objects documented; embedded editor operation remains unverified. | Word OLE objects documented; embedded editor operation remains unverified. | None found | Yes, according to the manual: Archived vendor-supplied DLL readers for crystallographic and MS formats. Opens the cited page. | Not established |
| alvaSketcher | Not published | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: No documented editor embedding API, SDK, or package found. | No documented editor embedding API, SDK, or package found. | None found | Not established | Not established |
| moled | 3.0.0 | Smidge | JavaScript | None | SVG elements created and updated by D3.js v3. | Not measured | 0.4 MB | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Legacy iframe demo exists; usable editor embedding remains unconfirmed. | Legacy iframe demo exists; usable editor embedding remains unconfirmed. | AGPL-3.0 | Not established | Not established |
| ChemWorks | 1.9 | Not established | Not published | Not established | Not published | 17 MB | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: No supported editor embedding mechanism documented. | No supported editor embedding mechanism documented. | $9.99 standalone macOS application; embedding terms unconfirmed. | Not established | Not established |
| Molecule | 1.4 | Not established | Not published | Not established | Not published | Not measured | Not measured | Not measured | Not measured | Not measured | Not established | Not established | Not established | Not established | Not established: Embedding route unconfirmed; vendor website unavailable. | Embedding route unconfirmed; vendor website unavailable. | None found | Not established | Not established |