Starting with no knowledge of MMDS, a stepwise introduction to drawing a new molecular structure using an iPhone/iPod/iPad.


Getting Started

Drawing Templates

Changing Atom Type

Adding Exocyclic Bonds

Zoom and pan




The most exotic feature of the Mobile Molecular DataSheet (MMDS) is its molecular structure editor, which serves the same purpose as traditional PC-based structure editors, but has been completely redesigned to work with the palm-sized form factor. Almost all chemists are familiar with standalone desktop drawing packages (e.g. ChemDraw, ISIS/Symyx Draw, etc.), and web-based applets for online queries (e.g. JME, Marvin, ChemWriter, etc.). All of these software packages have very similar user interfaces which are based on picking tools, and using the mouse to select, move and drag objects.

For palm-sized devices with touchscreens, these ideas do not translate well, because a screen that is 5cm x 8cm is very small relative to the size of a finger, which means not only are the objects harder to locate, but the only available pointing device is relatively large and imprecise. It is difficult for a user to be absolutely sure what exactly is positioned underneath the centre of one's finger when it is obscuring a significant portion of the screen.

To make drawing of molecular structures feasible on a palm-sized device, using one (and occasionally two) fingers, it is necessary to change some of the interface ideas in order to make it work. This article provides a rudimentary introduction to some of the basic ideas behind the molecular structure drawing interface provided by MMDS.

This tutorial is written from the point of view of an iPhone or iPod user, but the same principles apply to the iPad, the only difference being the screen proportions.

For more information about the menus and icons on the main screen, see: Annotated Screens (iPhone, iPad). For a specific summary of the gestures used for molecule editing, see: Overview of Drawing Gestures (iPhone). For a live introduction, see Video Demo: Basic Drawing Tutorial.

Getting Started

Run the Mobile Molecular DataSheet app. The main menu contains a number of datasheets, each of which is shown by a coloured ribbon, with the first few structures shown underneath. The top datasheet is always the one called the Scratch Sheet, which acts as a repository of temporary molecule data. This is a good place to store molecules when experimenting with the structure editor.

Locate and tap the icon for adding a new structure, which is at the bottom leftcorner of the Scratch Sheet title, shown with a red border in the following screenshot:

If you are new to MMDS, you probably have not modified the configuration settings, and the expert mode flag will be set to off. This means that when editing a fresh structure, a startup dialog is shown:

Usually the best way to start out a new structure is to pick an atom, or place a template, and use it as a starting point for drawing the rest of the molecule. The startup dialog allows any of these to be selected, and will step through the menus based on the choice. To proceed with this tutorial, select the first row, which is entitled Blank Structure. Either tap it once and press the Accept button, or tap it twice.

This will proceed to the structure editor, which starts with a blank molecule:

As can be seen, a menu of icons is shown, which takes up the bottom half of the screen. This is called the command bank. It can be raised or lowered by touching the grip:

The grip can be activated by tapping on it, or by touching it and dragging it up or down.

The initial command bank is the main bank, which contains the top-level command buttons, and also provides buttons to open a number of sub-banks.

Since all of the buttons are represented by icons, it takes some time to get used to what they all mean. The best way to find out is to touch a button and keep it held. After a brief pause, an informative description will appear:

In this case, the button at the top left, which is styled as a check-mark, has been held. The help text informs that its purpose is to save the diagram. Pressing this button will save any modifications that have been made, and return to the main menu. The button to the right, a cross-mark, will return to the main menu without saving modifications.

To avoid pressing a command button after obtaining help for it, move your finger away from the command menu before releasing it.

Drawing Templates

When starting a new drawing, there are two common ways to get started: by creating an atom and using it as the starting point, or by starting with a template. In this tutorial, the molecule that will be drawn is caffeine:

Since the predominant feature of this molecule is a fused ring system, a ring template is a good starting point.

From the main button bank, tap the template command button:

A new sub-bank will slide in to replace the main bank. Select the command button on the top left, which corresponds to small ring templates:

Now locate the button for cyclohexane, drawn as a regular hexagon:

Activating the command button will bring up the template placement mode. Since there are no existing atoms, there is no reason to be concerned about joining template atoms to anything else.

The template is drawn onscreen, in turquoise, to indicate that it has not yet been placed. There are three available command buttons, for accept, next and previous. The default conformation is the right one, so press the accept button (the check-mark). This will change the colour of the ring to white, to indicate that it is now part of the current structure, and return to the previous sub-bank.

Hide the template button bank by tapping the top grip. The screen will now show only the cyclohexane hexagon framework.

Tap the vertical bond on the far right. The bond should become highlighted in green:

The green highlight means that the object underneath it is the current object. Atoms or bonds are allowed to be the current object, and there can be either one or none at any given time.

Note that it is only necessary to hit the area fairly close to the bond with your finger, since it is not a very precise pointing device. If nothing was highlighted, or an atom, or the wrong bond, try tapping again, closer to the centre of the desired bond. Be careful not to hold your finger down too long, or tap twice, and try not to move your finger after touching the screen. These are all gestures which encode for other functionality. If the wrong gesture is interpreted, it may be necessary to dismiss a popup of some sort, or reset the selection/current state by tapping on an area which is not close to any atoms or bonds.

Now that the bond is highlighted as shown above, tap the grip at the bottom of the screen to bring back the bank of templates, and activate the button for cyclopentadiene:

The state will return to template placement mode, except this time the selected template is fused to the current bond:

Default mode Desired mode

The initial state is shown on the left. Since there are multiple ways to fuse cyclopentadiene to the highlighted bond, the template fusion algorithm has to guess which one is desired. The way obtain the desired result is to step through the plausible fusion modes. Press the next command button until the mode on the right is obtained, i.e. one of the double bonds is overlaid on the highlighted bond, and the other double bond is on the lower right slope. Then, press the accept button to apply the result.

Now two levels of sub-banks must be dismissed. This is done by tapping or dragging the grip on the left side of the menu:

Changing Atom Type

Hide the main menu to get a clear look at the molecule thus far, which consists of two fused rings. The next step is to convert four of the atoms into nitrogen.

First, tap close to the atom closest to the top left corner, so that it becomes the current atom:

Open the command bank, and select the atoms sub-bank:

Tap the button for nitrogen:

The current atom is converted to N. Note also that the implicit hydrogen count is calculated and displayed, though we will be replacing three of these implicit hydrogens by methyl substituents later on.

Pick each of the three other atoms which need to be converted into nitrogen, and use the command button to change each of them:

Adding Exocyclic Bonds

Return to the main command bank, and open up the bond sub-bank:

Tap the atom at the apex of the 6-membered ring to make it current:

Now tap the button which denotes a double bond:

A new bond will be created, to a new atom, using the current atom as the starting point. A direction and distance will be determined automatically by examining the preexisting geometry:

Repeat the process with the other methylene carbon:

Tap the screen in an area which is not close to an atom or a bond in order to unhighlight the current atom.

The next task is to convert the two terminal atoms into oxygen. There is more than one way to do this. The method that was described previously for creating the nitrogen atoms would work, but instead a new concept will be introduced: selected atoms.

Touch a part of the screen just above the top atom and start moving your finger gently, without delay. If you wait too long, a popup menu will appear, which is not what you want. If this happens, dismiss it by tapping another part of the screen, and try again. As long as the timing is right, a smudge will follow your finger:

Keep tracing this "worm trail" until it covers both of the terminal atoms, and shows them as being highlighted in a brighter shade of turquoise:

Release your finger from the screen. The two terminal atoms are now marked as selected. At any given point in time, every atom within the structure is either selected or not selected. This concept coexists alongside the idea of a current atom or bond. Most of the command actions represented by the many different icons in MMDS need to know what atoms or bonds to operate on. In most cases, if there are any selected atoms, then these are considered to be the subject for the operation, and if there are no selected atoms, then the current atom or bond is used as the subject instead.

The next step is to convert both of these atoms to oxygen, using a single command. This could be done using the atom sub-bank, but instead we will introduce a new concept: the context bank. To activate the context bank, touch an area of the screen and hold it until the context bank appears:

The context bank is made up of icons which are accessible from the command bank, but is organised differently, and only lists commands that are applicable. Any operation which would have no effect is not shown (e.g. selecting all atoms when all atoms are already selected, changing a bond order to single when the current bond is already single, etc.).

Like the command banks, the context bank also has sub-banks. Select the atom sub-bank icon:

A list of common elements is shown, as well as more sub-banks for those less common. Note carbon is not listed as one of the choices, since both of the selected atoms are currently carbon atoms.

Select oxygen to convert both the selected atoms:

Now that the terminal atoms have been converted into oxygen, it is no longer desirable for them to be selected. Tap some part of the screen not close to an atom or bond, or use the clear selection button from the main bank (or context bank) to unselect all of the atoms.

Zoom and pan

There are action buttons for zooming in and out, but with the iOS version of MMDS, it is usually more convenient to make use of two finger gestures to achieve this effect.

Zooming in or out is done with a pinch gesture, which is similar to many other iOS apps:

Panning is less obvious. Most iOS apps which allow a screen to be moved around, e.g. the Safari app, or scrolling tables, default to a pan operation when a single finger is swiped along the screen. MMDS uses the single-finger movement gesture for selecting atoms. To move the structure around on the screen, place two fingers on the screen, and move them both, keeping them approximately the same distance apart, in order to distinguish the gesture from the zoom.

The next section is easier to work with when the molecule is larger, so zoom in slightly, so that the 6-membered ring takes up a large portion of the centre of the screen.


Because a finger is large and atoms are small, tapping a particular object of interest is not always the easiest way to make that the current object. If there is a current atom or bond, i.e. anything is highlighted in green, it is possible to enter traversal mode by touching the screen close to the current object, then without waiting for too long, moving your finger in a particular direction.

In traversal mode, the current atom/bond is dragging along the atom-bond network, in the general direction in which the finger is moved. The current object alternates between atoms and bonds, and only follows along bonded connections.

The following sequence shows what happens when a bond is made current, then traversal mode is activated by clicking near it and dragging in a generally top-left direction:

The current object hops between atoms and bonds, in the direction in which it is being dragged. Releasing your finger at any time stops the traversal.

Note that when traversal mode is activated and the current object is an atom, several phantom bonds are displayed. These are proposed locations for creating new bonds, and it is possible to drag the traversal cursor over top of them:

Releasing your finger when one of the phantom bonds is selected causes the phantom bond to become real, i.e. the current atom is methylated:

Finishing the drawing of a caffeine molecule requires methylation of three nitrogens, one of which has just been shown. Use the traversal mode to create the other two.

Note that when traversing across the structure, the current object and its neighbours are always retained on the screen, so the molecule will be scrolled as necessary. So as the current object migrates across the molecule, the current region of interest will always be shown, which is relevant to this example, since it was previously zoomed in so that it did not all fit on the screen.


A guided tour through the drawing features of the iOS version of MMDS has been demonstrated. Although it only scratches the surface of the drawing capabilities, many of the remaining features should be intuitive, with a little trial and error. The drawing primitives that are represented by the graphical icons of MMDS represent a very powerful set of operations which can be used to construct publication-quality molecular diagrams with a very small number of steps, once they are understood. Perseverence will be rewarded!

See Also

Annotated Screens (iPhone, iPad), Demonstration Videos, Drawing with Templates (iPhone), Introduction to MolSync (iOS), Introduction to Reactions (iPhone), Introduction to SAR Table (iOS), Mobile Molecular DataSheet (iOS), Output to a Projector (iPhone), Overview of Drawing Gestures (iPhone), Products