This website is biased toward ReShiki, because its maintainer also maintains ReShiki. Please be careful.
2D structure cleanup
A command tidies bond lengths and angles of a drawn structure.
87 tools have this, 10 of them shown here. 2 do not. 39 not established.
What powers it: Indigo (WebAssembly) (2), RDKit.js (WebAssembly) (2), In-house (ChemDraw 2D structure-generation and cleanup algorithms, local) (1), Ported from RDKit RDDepictor (Rust); In-house (Rust layout refinements) (1), In-house browser JavaScript cleanup; optional Indigo 1.46.0 indigo-ketcher-norender browser WebAssembly layout/clean2d (1), RDKit RDDepictor (C++), with In-house (C++) coordination layout (1), Ported from Indigo MoleculeCleaner2d and BiconnectedDecomposer (TypeScript, modified) (1), In-house (TypeScript polygon/tree cleanup) + OpenChemLib (JavaScript re-layout) + RDKit MinimalLib (WebAssembly fallback) (1), Indigo 1.40.0 (WebAssembly, through Ketcher standalone) (1), In-house layoutMolecule 2D coordinate generator (JavaScript module in browser) (1), In-house JavaScript layout/cleanup; bundled OpenChemLib 9.25.1 JavaScript assists cage conformers and stereochemistry preservation (1), Indigo 1.45.1 (C++ compiled to WebAssembly, indigo-ketcher through ketcher-standalone 3.17.2) (1), In-house (TypeScript geometry cleanup); RDKit MinimalLib 2026.9.1 (WebAssembly RDDepictor and CoordGen layout seeds for tangled structures) (1), Indigo (WebAssembly via ketcher-standalone) (1), In-house (chematic-depict, Rust/WebAssembly compute_layout) (1), In-house (JavaScript); RDKit.js (WebAssembly, complex-ring coordinates) (1), Indigo (WebAssembly through embedded Ketcher 3.18.0) (1), RDKit/CoordGen (Python, local server) + In-house NumPy/FIRE refinement (1), RDKit (Python rdDepictor.Compute2DCoords) (1), OpenChemLib (browser JavaScript Molecule.inventCoordinates); In-house (orientation preservation and fallback geometry) (1), OpenChemLib (JavaScript npm package) (1), Indigo (indigo-ketcher 1.40.0 WebAssembly through Ketcher 3.12.0); RDKit native Python bindings for alternate-canvas backend cleanup (1), OpenChemLib JS (JavaScript, inventCoordinates) (1), Indigo 1.46.0 (WebAssembly, Ketcher standalone browser worker) (1), In-house (JavaScript, browser) (1), In-house (JavaScript) (1), RDKit (Python) (1), In-house ChemDoodle Java API (remote iChemLabs CloudServices; optimize with dimension 2) (1), Indigo (WebAssembly through ketcher-standalone, clean2d) (1), RDKit (Python rdDepictor; optional CoordGen backend) (1), Indigo C++ (indigo-ketcher WebAssembly in standalone mode, or Indigo HTTP service in remote mode) (1), Indigo 1.46.0 (WebAssembly) (1), OpenChemLib (JavaScript) (1), OASA (vendored Python, coords_generator) (1), In-house (TypeScript ring and chain layout, alignment and spacing) (1), RDKit RDDepictor (C++; WebAssembly in browser build); In-house monomer layout (1), Open Babel gen2D (native C++ through optional obabeliface shared library) (1), RDKit (local Python/PyInstaller sidecar; Compute2DCoords with 3D embedding fallback) (1), RDKit.js (WebAssembly; CoordGen 2D layout) (1), CDK StructureDiagramGenerator (Java) (1), In-house (Molsoft libchem, WebAssembly; asm.js fallback); Molsoft conversion service (remote server fallback) (1), CDK (Java StructureDiagramGenerator and GeometryUtil) (1), RDKit (Python, local server) (1), In-house (1), Ported from OpenChemLib CoordinateInventor (Java compiled to JavaScript with GWT) (1), In-house browser JavaScript coordinate optimizer (Clean Structure) (1), In-house (Elemental JavaScript) (1), Open Babel (optional C++ compiled to WebAssembly with Emscripten; Gen2D); Indigo (optional C++ WebAssembly alternative; layout) (1), Ported from JMDraw (C++ SDG implementation) (1), In-house (Java bond length normalization only) (1), OpenChemLib (GWT-compiled JavaScript) (1), Open Babel (Ruby bindings, application server; gen2D) (1), In-house (JavaScript automatic coordinate layout) (1), RDKit (Python; CoordGen preferred) (1), Ported from CDK (JavaScript) (1), Open Babel (WebAssembly via Kekule.js; import layout only) (1), OASA (bundled Python coordinate generator) (1), In-house (ChemDoodle 2D coordinate-layout algorithm, local Java library) (1), In-house (JavaScript local cleanup); optional Indigo (WebAssembly layout/clean2d) (1), In-house Chemaxon Cleaner (local Java core library) (1), RDKit.js (browser WebAssembly get_new_coords); RDKit and Indigo (desktop Electron IPC); In-house (desktop normalClean) (1), In-house Chemaxon Clean2D (remote Java REST service via MJSWS, JChem Web Services or JChem Microservices; clean2dws) (1), BIOVIA Pipeline Pilot Chemistry SDK / PPChem SDK (local SDK; small-molecule cleanup since Draw 2021) (1), Indigo (native C++ via Rust FFI; indigoClean2d and indigoLayout) (1), RDKit (C++) (1), In-house Marvin Web Services structure clean (remote Java service) (1), CDKSwiftNativePort (CDKStructureDiagramGenerator native Swift port) (1), In-house (C tidy_mol; endpoint snapping and duplicate removal) (1), In-house (C++ ring, bond-length and angle cleanup) (1), RDKit (native C++ RDDepict::compute2DCoords with CoordGen preferred) (1), In-house (C++ libjcp_engine.so via N-API) (1)
- Tested by running it
- Seen in the app
- The manual says yes
- Partly, with the reason shown
- Not supported
- Not established, which is not the same as no
Select a mark for its proof. A filled mark opens our screenshot, or the manual if the check left nothing to picture. A ring opens the manual.

Yes, according to the manual: Clean Up straightens bond lengths and angles. Octet Draw
1.1.0
Uses Ported from Indigo MoleculeCleaner2d and BiconnectedDecomposer (TypeScript, modified)
Clean up structure command beside a selected molecule.

Yes, according to the manual: Clean up command: Ctrl+L. Covalent
2uu6kqoryy
Uses In-house layoutMolecule 2D coordinate generator (JavaScript module in browser)
Clean up command above the caffeine drawing.

Yes, according to the manual: Standardizes bond lengths and angles while checking stereochemistry. vibe-sketcher
0.6.5
Uses RDKit/CoordGen (Python, local server) + In-house NumPy/FIRE refinement
The Clean up command above structures on the canvas.

Yes, according to the manual Chemliora
15.19.0
Uses OpenChemLib JS (JavaScript, inventCoordinates)
Tidy structure button above the drawing canvas.

Yes, according to the manual: Clean Up 2D tidies molecular drawing coordinates. MoleditPy
5.1.3
Uses RDKit (Python rdDepictor; optional CoordGen backend)
The Clean Up 2D button beneath a drawing.

Yes, according to the manual Molecule Builder (OvOHongYu)
0.1.0
Uses In-house (TypeScript ring and chain layout, alignment and spacing)
Automatic layout button beside an ethylbenzene drawing.

Yes, according to the manual WaveSpeed AI Chemical Structure Drawer
cBQ3oDFlZ9g0696A_FKvj
Uses RDKit.js (WebAssembly; CoordGen 2D layout)
Clean up command above the drawing canvas.

Yes, according to the manual SketchScape
1.0
Uses RDKit (Python, local server)
Edit panel with a Clean up 2D structure button.

Yes, according to the manual: Selected-molecule popup recomputes 2D coordinates. JSME Molecule Editor
v2024-04-29
Uses OpenChemLib (GWT-compiled JavaScript)
Editor menu offers a compute 2D coordinates command.

Yes, according to the manual: Server-side Open Babel generates 2D coordinates. Ketcherails (ketcher-rails)
0.1.12
Uses Open Babel (Ruby bindings, application server; gen2D)
Clean command in the toolbar above drawn structures.
Available, no screenshot
ChemDraw's license keeps us from publishing pictures of its interface.
- Yes, according to the manual: Standardizes molecular bond lengths and angles. Opens the cited page.ChemDrawUses In-house (ChemDraw 2D structure-generation and cleanup algorithms, local). Standardizes molecular bond lengths and angles.
- Partly: Selection cleanup leaves attachment-containing complexes unchanged; whole-scheme cleanup is missing. Opens the cited page.ReShikiUses Ported from RDKit RDDepictor (Rust); In-house (Rust layout refinements). Selection cleanup leaves attachment-containing complexes unchanged; whole-scheme cleanup is missing.Source
- Yes, according to the manual: Cleanup evens bond lengths, angles, and ring shapes. Opens the cited page.MolDrawUses In-house browser JavaScript cleanup; optional Indigo 1.46.0 indigo-ketcher-norender browser WebAssembly layout/clean2d. Cleanup evens bond lengths, angles, and ring shapes.Source
- Yes, according to the manual: Clean regenerates 2D layout while preserving stereochemistry and bond styles. Opens the cited page.PenzeneUses RDKit RDDepictor (C++), with In-house (C++) coordination layout. Clean regenerates 2D layout while preserving stereochemistry and bond styles.Source
- Yes, according to the manual. Opens the cited page.ChemDraftUses In-house (TypeScript polygon/tree cleanup) + OpenChemLib (JavaScript re-layout) + RDKit MinimalLib (WebAssembly fallback). Source
- Yes, according to the manual. Opens the cited page.SketchIQUses Indigo 1.40.0 (WebAssembly, through Ketcher standalone). Source
- Yes, according to the manual: Clean Up Structure, 2D and Reaction commands. Opens the cited page.Reactio DrawUses In-house JavaScript layout/cleanup; bundled OpenChemLib 9.25.1 JavaScript assists cage conformers and stereochemistry preservation. Clean Up Structure, 2D and Reaction commands.Source
- Yes, according to the manual. Opens the cited page.ChemEditUses Indigo 1.45.1 (C++ compiled to WebAssembly, indigo-ketcher through ketcher-standalone 3.17.2). Source
- Yes, according to the manual. Opens the cited page.Chem IllustratorUses In-house (TypeScript geometry cleanup); RDKit MinimalLib 2026.9.1 (WebAssembly RDDepictor and CoordGen layout seeds for tangled structures). Source
- Yes, according to the manual: Exposed Clean Up command invokes the structure service. Opens the cited page.ChemThisTryUses Indigo (WebAssembly via ketcher-standalone). Exposed Clean Up command invokes the structure service.Source
- Yes, according to the manual: Clean Up Structure command is available. Opens the cited page.Chematic DrawUses In-house (chematic-depict, Rust/WebAssembly compute_layout). Clean Up Structure command is available.Source
- Yes, according to the manual. Opens the cited page.Molecule Lab (The Freshman Mole)Uses In-house (JavaScript); RDKit.js (WebAssembly, complex-ring coordinates). Source
- Yes, according to the manual: Clean Up assigns uniform bond lengths and angles. Opens the cited page.FreeChemDrawUses Indigo (WebAssembly through embedded Ketcher 3.18.0). Clean Up assigns uniform bond lengths and angles.Source
- Yes, according to the manual: RDKit 2D cleanup protects metal, coordination and wedge/hash components. Opens the cited page.ErezDrawUses RDKit (Python rdDepictor.Compute2DCoords). RDKit 2D cleanup protects metal, coordination and wedge/hash components.Source
- Yes, according to the manual. Opens the cited page.MolChartUses OpenChemLib (browser JavaScript Molecule.inventCoordinates); In-house (orientation preservation and fallback geometry). Source
- Yes, according to the manual: Regenerates selected or whole structure coordinates through OpenChemLib. Opens the cited page.MolCanvasUses OpenChemLib (JavaScript npm package). Regenerates selected or whole structure coordinates through OpenChemLib.Source
- Yes, according to the manual: Clean Up regularizes bond lengths and angles. Opens the cited page.KendrawUses Indigo (indigo-ketcher 1.40.0 WebAssembly through Ketcher 3.12.0); RDKit native Python bindings for alternate-canvas backend cleanup. Clean Up regularizes bond lengths and angles.Source
- Yes, according to the manual. Opens the cited page.BoltzDrawUses Indigo (WebAssembly). Source
- Yes, according to the manual: Ketcher normalizes bond lengths and angles. Opens the cited page.MolbrettUses Indigo 1.46.0 (WebAssembly, Ketcher standalone browser worker). Ketcher normalizes bond lengths and angles.Source
- Yes, according to the manual: Repositions chains and branches; rings remain fixed. Opens the cited page.Zeanium Molecule DrawerUses In-house (JavaScript, browser). Repositions chains and branches; rings remain fixed.Source
- Yes, according to the manual: Toolbar command optimizes bond geometry in two dimensions. Opens the cited page.Sciformation VectorMolUses In-house (JavaScript). Toolbar command optimizes bond geometry in two dimensions.Source
- Yes, according to the manual: RDKit regenerates 2D coordinates with uniform bond lengths. Opens the cited page.BondForgeUses RDKit (Python). RDKit regenerates 2D coordinates with uniform bond lengths.Source
- Yes, according to the manual: Requires registered iChemLabs Cloud Services access. Opens the cited page.ChemDoodle Web ComponentsUses In-house ChemDoodle Java API (remote iChemLabs CloudServices; optimize with dimension 2). Requires registered iChemLabs Cloud Services access.Source
- Yes, according to the manual: Ketcher cleanup standardizes bond lengths and angles. Opens the cited page.Chemeditor (Chemrise)Uses Indigo (WebAssembly through ketcher-standalone, clean2d). Ketcher cleanup standardizes bond lengths and angles.Source
- Yes, according to the manual: Vendor claim: automatic structure cleanup. Opens the cited page.MolView.comUses RDKit.js (WebAssembly). Vendor claim: automatic structure cleanup.Source
- Yes, according to the manual: Clean Up makes bond lengths and angles uniform. Opens the cited page.KetcherUses Indigo C++ (indigo-ketcher WebAssembly in standalone mode, or Indigo HTTP service in remote mode). Clean Up makes bond lengths and angles uniform.Source
- Yes, according to the manual: Ketcher Clean Up regularizes bond lengths and angles. Opens the cited page.AI Chemical Drawing (CubicZnS)Uses Indigo 1.46.0 (WebAssembly). Ketcher Clean Up regularizes bond lengths and angles.Source
- Yes, according to the manual: Tidy structure regenerates coordinates with OpenChemLib. Opens the cited page.OpenReactionsUses OpenChemLib (JavaScript). Tidy structure regenerates coordinates with OpenChemLib.Source
- Yes, according to the manual: Command regenerates coordinates with normalized bond lengths and angles. Opens the cited page.PyChem-ProUses OASA (vendored Python, coords_generator). Command regenerates coordinates with normalized bond lengths and angles.Source
- Yes, according to the manual. Opens the cited page.KetchDrawUses Indigo (WebAssembly). Source
- Yes, according to the manual. Opens the cited page.Schrödinger SketcherUses RDKit RDDepictor (C++; WebAssembly in browser build); In-house monomer layout. Source
- Yes, according to the manual: Requires the Open Babel adapter and gen2D operation. Opens the cited page.MolsketchUses Open Babel gen2D (native C++ through optional obabeliface shared library). Requires the Open Babel adapter and gen2D operation.Source
- Yes, according to the manual: Auto-Layout regenerates 2D coordinates through RDKit. Opens the cited page.ChemableUses RDKit (local Python/PyInstaller sidecar; Compute2DCoords with 3D embedding fallback). Auto-Layout regenerates 2D coordinates through RDKit.Source
- Yes, according to the manual. Opens the cited page.JChemPaintUses CDK StructureDiagramGenerator (Java). Source
- Yes, according to the manual: 2D Cleanup/Depiction command regenerates coordinates. Opens the cited page.Molsoft HTML5 Molecule EditorUses In-house (Molsoft libchem, WebAssembly; asm.js fallback); Molsoft conversion service (remote server fallback). 2D Cleanup/Depiction command regenerates coordinates.Source
- Yes, according to the manual: Applying edits regenerates layout through SMILES. Opens the cited page.Molecule ClipboardUses RDKit.js (WebAssembly). Applying edits regenerates layout through SMILES.Source
- Yes, according to the manual: CDK regenerates coordinates and normalizes bond lengths. Opens the cited page.MolGLideXUses CDK (Java StructureDiagramGenerator and GeometryUtil). CDK regenerates coordinates and normalizes bond lengths.Source
- Yes, according to the manual. Opens the cited page.Structura (chem-structura)Uses In-house. Source
- Yes, according to the manual: Cleanup regenerates 2D coordinates and can preserve unselected fragment orientation. Opens the cited page.OpenChemLib JS editorUses Ported from OpenChemLib CoordinateInventor (Java compiled to JavaScript with GWT). Cleanup regenerates 2D coordinates and can preserve unselected fragment orientation.Source
- Yes, according to the manual: Clean Structure adjusts coordinates, bond geometry, arrows, and text. Opens the cited page.MolSketchUses In-house browser JavaScript coordinate optimizer (Clean Structure). Clean Structure adjusts coordinates, bond geometry, arrows, and text.Source
- Yes, according to the manual: Context menu tidies sketched geometries. Opens the cited page.Dotmatics Elemental / Elemental DrawUses In-house (Elemental JavaScript). Context menu tidies sketched geometries.Source
- Yes, according to the manual: 2D coordinate regeneration requires an optional chemistry adapter. Opens the cited page.Kekule.jsUses Open Babel (optional C++ compiled to WebAssembly with Emscripten; Gen2D); Indigo (optional C++ WebAssembly alternative; layout). 2D coordinate regeneration requires an optional chemistry adapter.Source
- Yes, according to the manual. Opens the cited page.XDrawChemUses Ported from JMDraw (C++ SDG implementation). Source
- Partly: Normalizes average bond length by scaling; angles remain unchanged. Opens the cited page.SketchElUses In-house (Java bond length normalization only). Normalizes average bond length by scaling; angles remain unchanged.Source
- Partly: Local automatic geometry adjustments and symmetry tools only. Opens the cited page.ButlerovLocal automatic geometry adjustments and symmetry tools only.Source
- Partly: Auto arrange crosses ring bonds and rewrites formula. Opens the cited page.ChemMDUses In-house (JavaScript automatic coordinate layout). Auto arrange crosses ring bonds and rewrites formula.Source
- Yes, according to the manual: Recalculates 2D coordinates, disregarding existing coordinates. Opens the cited page.rdEditorUses RDKit (Python; CoordGen preferred). Recalculates 2D coordinates, disregarding existing coordinates.Source
- Yes, according to the manual: Optional coordinate-regeneration command; omitted from default toolbar. Opens the cited page.KemiaUses Ported from CDK (JavaScript). Optional coordinate-regeneration command; omitted from default toolbar.Source
- Partly: Automatic 2D layout on text import only. Opens the cited page.SketChemUses Open Babel (WebAssembly via Kekule.js; import layout only). Automatic 2D layout on text import only.Source
- Yes, according to the manual: Regenerates unselected geometry around a selected connected bond fragment. Opens the cited page.BKChem Python 3 ModernizedUses OASA (bundled Python coordinate generator). Regenerates unselected geometry around a selected connected bond fragment.Source
- Yes, according to the manual. Opens the cited page.ChemDoodle 2DUses In-house (ChemDoodle 2D coordinate-layout algorithm, local Java library). Source
- Yes, according to the manual: Structure cleanup is part of the documented drawing workflow. Opens the cited page.LabCanvas Figure Editor / MolDrawUses In-house (JavaScript local cleanup); optional Indigo (WebAssembly layout/clean2d). Structure cleanup is part of the documented drawing workflow.Source
- Yes, according to the manual. Opens the cited page.Marvin Desktop Suite / MarvinSketchUses In-house Chemaxon Cleaner (local Java core library). Source
- Yes, according to the manual: Normalizes bond lengths, angles, rings and overall layout. Opens the cited page.ChemDraft (元素智研)Normalizes bond lengths, angles, rings and overall layout.Source
- Yes, according to the manual. Opens the cited page.InDrawUses RDKit.js (browser WebAssembly get_new_coords); RDKit and Indigo (desktop Electron IPC); In-house (desktop normalClean). Source
- Yes, according to the manual: Requires a configured 2D-clean web service. Opens the cited page.Marvin JSUses In-house Chemaxon Clean2D (remote Java REST service via MJSWS, JChem Web Services or JChem Microservices; clean2dws). Requires a configured 2D-clean web service.Source
- Yes, according to the manual: vendor claim; standardizes bond lengths and angles. Opens the cited page.BIOVIA DrawUses BIOVIA Pipeline Pilot Chemistry SDK / PPChem SDK (local SDK; small-molecule cleanup since Draw 2021). vendor claim; standardizes bond lengths and angles.Source
- Yes, according to the manual: Tidies structure geometry and bond lengths. Opens the cited page.ChemWindow (KnowItAll ChemWindow Edition)Tidies structure geometry and bond lengths.Source
- Yes, according to the manual: Clean Up standardizes bond lengths and angles. Opens the cited page.Chemistry DrawUses Indigo (native C++ via Rust FFI; indigoClean2d and indigoLayout). Clean Up standardizes bond lengths and angles.Source
- Yes, according to the manual. Opens the cited page.Zoho ChemStudioSource
- Yes, according to the manual. Opens the cited page.KingDrawSource
- Yes, according to the manual: Clean Up Structure and Auto-Orient commands. Opens the cited page.ChemPencilClean Up Structure and Auto-Orient commands.Source
- Yes, according to the manual: Clean Structure standardizes bond lengths and angles. Opens the cited page.ACD/ChemSketchClean Structure standardizes bond lengths and angles.Source
- Yes, according to the manual: Clean Geometry plus bond-length, bond-angle, and ring normalization. Opens the cited page.Ferrum Chemical ForgeUses RDKit (C++). Clean Geometry plus bond-length, bond-angle, and ring normalization.Source
- Yes, according to the manual: Dedicated 2D clean command. Opens the cited page.Marvin CloudUses In-house Marvin Web Services structure clean (remote Java service). Dedicated 2D clean command.Source
- Yes, according to the manual: Clean Up improves the 2D layout without changing connectivity. Opens the cited page.AtomLensUses CDKSwiftNativePort (CDKStructureDiagramGenerator native Swift port). Clean Up improves the 2D layout without changing connectivity.Source
- Partly: Removes duplicates and straightens near-horizontal/vertical bonds; no general length normalization. Opens the cited page.ChemtoolUses In-house (C tidy_mol; endpoint snapping and duplicate removal). Removes duplicates and straightens near-horizontal/vertical bonds; no general length normalization.Source
- Yes, according to the manual: Command tidies selected structures. Opens the cited page.LhendrawUses In-house (C++ ring, bond-length and angle cleanup). Command tidies selected structures.Source
- Yes, according to the manual: Clean Up Structure recomputes coordinates using CoordGen. Opens the cited page.ChemCADUses RDKit (native C++ RDDepict::compute2DCoords with CoordGen preferred). Clean Up Structure recomputes coordinates using CoordGen.Source
- Yes, according to the manual: Vendor claim: Clean Up automatically tidies distorted structures. Opens the cited page.Chemistry 4-D DrawVendor claim: Clean Up automatically tidies distorted structures.Source
- Yes, according to the manual: Clean command adjusts angles, spacing, and ring geometry. Opens the cited page.ChemStitchClean command adjusts angles, spacing, and ring geometry.Source
- Yes, according to the manual: Dense spiro/bridged systems may overlap. Opens the cited page.BondDrawUses In-house (C++ libjcp_engine.so via N-API). Dense spiro/bridged systems may overlap.Source
- Yes, according to the manual: Android listing describes force-directed layout; vendor claim. Opens the cited page.MolSketchGoAndroid listing describes force-directed layout; vendor claim.Source
- Yes, according to the manual: Clean Up tidies selected structures or the entire drawing; vendor claim. Opens the cited page.Elk_Draw RDKitClean Up tidies selected structures or the entire drawing; vendor claim.Source
- Yes, according to the manual. Opens the cited page.ChemScribbleSource
- Yes, according to the manual: Vendor claim: tidies rings and spacing. Opens the cited page.StructoVendor claim: tidies rings and spacing.Source
- Yes, according to the manual: vendor claim; automatic coordinate cleanup. Opens the cited page.alvaSketchervendor claim; automatic coordinate cleanup.Source
Not available
- No: CLI layout.structure reports operation_not_implemented. Opens the cited page.ChemifreeCLI layout.structure reports operation_not_implemented.Source
- No: Cleanup only removes duplicate objects and empty groups. Opens the cited page.EasyChemCleanup only removes duplicate objects and empty groups.Source
Not established (39)
ChemCanvas, chemfig, Chemvas, cDraw, BondCraft, ChemSema, SketchEl 2, RadSketch, schematic, WebMolKit, ChemCanvasJS, Chemical Structure Editor (CSE), JMolDraw, MolTouch, Chemeditor (Chemie-Lernprogramme), vue-chemdraw (0chem), ChemWriter, MCDL Java Chemical Structure Editor, Glass, molsketch-cljs, MolPad, BKChem, GChemPaint, Chem4Word, JSDraw, MoleculeSketch, FX ChemStruct / FX Draw Chemical Structures, ChemGraphic 2, MyChemise, CyBy-Draw, Chem+ Molecular Structure Editor, MolPrime+, MolGenDraw, Chirys Draw, Chem Sketcher (Non_REM.Persona Laboratory), Chemograph Plus, moled, ChemWorks, Molecule