We are happy to launch ChemDoodle Web Components 6. Included are many new features for creating powerful educational content, including traditional Lewis Dot Structures, and measurements in 3D. Other great improvements include a simpler install, the elimination of 3rd party library conflicts, mobile gesture support in WebGL canvases and CML. Try it out today and see why ChemDoodle is the universal chemical drawing standard.

We have also created two new demos to show off some of the new features, be sure to check them out:

Executive Summary

This is a major update to the ChemDoodle Web Components. Included is a 3D Editor UI that parities the 2D Sketcher for 3D graphics. Many new WebGL features including picking, highlighting and measurements (distances, angles and torsions). Other new features include Lewis Dot Structure rendering and CML IO. This update includes some major refactors, such as the renaming of the sketcher files and packages and inclusion of the external libraries internal to the ChemDoodle scope, so pay careful attention when upgrading.


  1. A new EditorCanvas3D canvas which is the 3D component allowing you to interact with and alter chemical data as the 2D Sketcher does in 2D.
  2. New measurement renderings in 3D canvases including Distances, Angles and Torsions.
  3. Gestures are now fully supported on mobile devices for 3D canvases. You can use touches, drags and pinches to control the molecule and assign interactivity to 3D canvases on mobile devices.
  4. The external libs (jQuery, jQuey UI, jQuery plugins, glMatrix) are now included into the ChemDoodle scope. This offers several advantages, including eliminating all library conflicts, reducing the number of files required to be installed, and controls the versions used by ChemDoodle. You can now inlcude these libraries yourself at any version and not worry about conflicts. To use the libraries inside of ChemDoodle, call them from the ChemDoodle.lib closure.
  5. New amino acid coloring options for Rainbow and Acidity. Nucleic acids can also be rendered in Rainbow style.
  6. A new atoms_HBlack_2D specification, which is true by default, states that hydrogens are always rendered in black on 2D canvases regardless of the other specifications. This helps make sure hydrogens appear correctly when both 2D and 3D canvases are contained on the same page and you are using a coloring scheme.
  7. The text and basic renderers for WebGL canvases have been merged into a single shader.
  8. We have added access to our cloud services through HTTPS as well as HTTP to suit your needs.
  9. Lewis Dot Structure style bonds can now be rendered.
  10. Added a new cloud call function, ChemDoodle.iChemLabs.createLewisDot() that generates a Lewis Dot Structure from a molecule data structure with 90° angles and the correct number of lone pairs to satisfy the octet rule.
  11. Added shortcuts to the sketcher for setting wedge bonds (7 sets a protruding bond while 8 sets a recessed bond).
  12. Added 0, 0.5 and 1.5 bond order renderings in WebGL canvases.
  13. A new CMLInterpreter class to read and write CML.
  14. Added a second compass type that displays through the origin.
  15. Minor code enhancements.


  1. Fixed issue where in some cases where the implicit hydrogens were not rendered to the right of the atom label, the charge still offset believing so.
  2. Fixed bug where PeriodicTableCanvas cells could not be selected on mobile devices.
  3. Fixed bug where the help button and logo would not update correctly if the sketcher was resized.
  4. Fixed minor issue where a return key press in some sketcher dialogs would execute button actions.
  5. Fixed bug where the light direction was not properly copied when VisualSpecification objects were created.
  6. Fixed issue where red merging preview circles did not appear when placing rings.
  7. Spectra now render segments with only 1 point in the spectrum space for more complete looking spectra.
  8. Animations now use requestAnimationFrame().
  9. Minor bug fixes.