Ketcher is an open-source web-based chemical structure editor incorporating high performance, good portability, light weight, and ability to easily integrate into a custom web-application. Ketcher is designed for chemists, laboratory scientists and technicians who draw structures and reactions.
- ⚡️ Fast 2D structure representation that satisfies common chemical drawing standards
- 💠 3D structure visualization
- 📝 Template library (including custom and user's templates)
- 🔩 Add atom and bond basic properties and query features, add aliases and Generic groups
- 🌀 Stereochemistry support during editing, loading, and saving chemical structures
- ➿ Storing history of actions, with the ability to rollback to previous state
- 💾 Ability to load and save structures and reactions in MDL Molfile or RXN file format, InChI String, ChemAxon Extended SMILES, ChemAxon Extended CML file formats
- 🔬 Zoom in/out, hotkeys, cut/copy/paste
- 🔮 OCR - ability to recognize structures at pictures (image files) and reproduce them
- 📋 Copy and paste between different chemical editors
- 🛠️ Settings support (Rendering, Displaying, Debugging)
- 📷 Use of SVG to achieve best quality in-browser chemical structure rendering
- Atom Tool, Bond Tool, and Template Tool to draw and edit structures
- Aromatize/De-aromatize Tool
- Calculate CIP Descriptors Tool
- Structure Check Tool
- MW and Structure Parameters Calculate Tool
- Select, modify, and erase connected and unconnected atoms and bonds using Selection Tool, or using Shift key
- Advanced Structure Clean up Tool (+ stereochemistry checking and structure layout)
- Simple Structure Clean up Tool (checks bonds length, angles and spatial arrangement of atoms)
- Easy to use R-Group and S-Group tools (Generic, Multiple group, SRU polymer, peratom, Data S-Group)
- Reaction Tool (reaction generating, manual and automatic atom-to-atom mapping)
- Flip/Rotate Tool
At this moment Ketcher library is delivered as a react component library and zip archive
npm install ketcher-standalone
import { StandaloneStructServiceProvider } from 'ketcher-standalone'
const structServiceProvider = new StandaloneStructServiceProvider()
const MyComponent = () => {
return (
<Editor
staticResourcesUrl={process.env.PUBLIC_URL}
structServiceProvider={structServiceProvider}
/>
)
Look at the following link for details.
You can find the instruction for service installation here.
Project | Status | Description |
---|---|---|
ketcher-core | Core functionality: domain, shared services, functions and interface declarations | |
ketcher-standalone | Contains only the functionality necessary to start Ketcher in standalone mode | |
ketcher-react | Package contains only the functionality necessary to define components. |
Ketcher uses Miew-React for viewing and editing data in 3D.
You can find the latest version of Miew-React here. The last checked version - 1.0.0.
See Contributing Guide.
Please read LICENSE and NOTICE for details.
Copyright (c) 2021 EPAM Systems, Inc.