MolPlay User Guide

General information

Welcome to MolPlay

MolPlay is a virtual molecular playground for interactive simulations and analyses (IMSA).

MolPlay provides a bootable USB platform as a turnkey environment for IMSA. It democratizes access to powerful computational techniques for researchers, educators, and students.

Key Features

  • Portable and self-contained
  • User-friendly interface
  • Curated set of hands-on examples
  • Lowered technical barriers for IMSA

Learn more about MolPlay

Quick Links

Interactive Molecular Simulations and Analyses Examples

MolPlay includes a variety of examples to demonstrate different IMSA techniques and applications. Each example comes with a brief description, detailed documentation, and a video walkthrough.

List of Examples

  1. BPTI: interactive protein simulation
    • Demonstrates protein dynamics in water
    • Explores force propagation and structural manipulation
  2. Deca-alanine helix in water: interactive peptide simulation
    • Simple system for beginners
    • Demonstrates basic molecular dynamics
  3. DMPC: interactive membrane simulation
    • Explores lipid bilayer dynamics
    • Demonstrates membrane perturbation and lipid extraction
  4. GK BS: interactive enzyme manipulation (coarse-grained)
    • Investigates enzyme binding cleft dynamics
    • Compares with all-atom simulation
  5. GK: interactive enzyme simulation (all-atom)
    • Explores allosteric effects in enzymes
    • Allows comparison with coarse-grained model
  6. OMPT: interactive membrane protein insertion
    • Simulates protein insertion into implicit membrane
    • Explores preferred orientations and insertion depths
  7. Protein-DNA: interactive DNA docking to a protein
    • Demonstrates protein-DNA interactions
    • Explores electrostatic-driven docking
  8. SNARE complex: interactive double membrane protein bundle simulation
    • Investigates mechanical properties of membrane fusion proteins
    • Demonstrates force propagation analysis
  9. VAMP-CG-v1: interactive membrane peptide simulation
    • Small coarse-grained bilayer system
    • Explores membrane - protein - water - ion interactions

Additional Information

Detailed documentation

MolPlay Documentation

QuickStart

User Guide

Example Documentation

Technical Details

  • MolPlay architecture
  • Integration with Batocera and Guix
    • A plain Batocera install is used as base system
    • The Guix package manager is added on top and provides a full and controllable environment for compilation etc.
  • Python scripting for experiment launching
    • Customized python scripts manage launching the visualization, simulation and control modules for each experiment
    • All such scripts are located in /userdata/roms/pygame

Extending MolPlay

  • Adding new examples ..not yet
  • Customizing the interface ..not yet
  • Integrating additional hardware ..not yet

Download full documentation PDF

Appendix

CPU compatibility

CPU Family CPUs
AMD Athlon 3000G, Silver 3050e
AMD Ryzen 7 5800H
AMD Custom Aerith APU Zen 2
Intel Celeron 1037U, G1610, G1610T, N2830, N3450
Intel Core i3 4130T, 4350, 4360, 8109U
Intel Core i5 2415M, 3427U, 4250U, 4440, 4570, 4670, 6200U, 12500T
Intel Core i7 4770T, 4790, 4790K
Intel Core m7 6Y75
Intel Other N100, Pentium 4405U, B960, G3220, G4500, Xeon E3-1246 v3
Beelink SER5 MAX

CPU compatibility information is taken from the Batocera wiki website. CPU models were constituted from reported working benchmark configurations.

GPU compatibility

GPU Family GPUs
NVIDIA GeForce GTX 750 Ti, GTX 1050, GTX 1050 Ti
NVIDIA Other GTX 750 Ti
AMD Radeon RX 550, 6500 XT
AMD Radeon Vega 3, Vega 3
AMD Integrated Radeon (3GB VRAM)
AMD RDNA 2
Intel HD Graphics Bay Trail, Haswell, Sandy Bridge, 500, 510, 515, 520, 530, 2500, 3000, 4000, 4400, 4600, 5000
Intel Iris Plus Graphics 655
Intel UHD Graphics 770, Xe 24EUs 750MHz
Intel Other HD Graphics 4600

GPU compatibility information is taken from the Batocera wiki website. GPU models were constituted from reported working benchmark configurations.

MolPlay Keyboard Shortcuts

Basic Navigation

`Enter` Navigate to sub-menu, launch experiment
`Esc` Go back to previous menu
`↑` / `↓` arrow keys Navigate through available items
`Ctrl` + `X` Exit a running experiment

Advanced Navigation

`Spacebar` Configuration menu
`Enter` long press Documentation, animation for experiment

MolPlay Mouse Usage

left-click + drag in void Rotate the view
left-click + drag on atom Apply forces to molecules
MIddle-click and drag Pan the view
Right-click and drag Zoom in/out
Scroll wheel Zoom in/out

Installation

MolPlay Downloads

Latest Version

System Requirements

Installation Instructions

  1. Download the ISO image
  2. Create a bootable USB stick
  3. Boot your computer from the MolPlay USB stick

More detailed instructions for a quick start here.

Additional Resources

View installation and usage instructions for a quick start.

Further Information

Get in Touch

We welcome your feedback, questions, and suggestions about MolPlay.

General Inquiries

Email: molplay-info at smplinux.de

Technical Support

Email: molplay-support at smplinux.de

Contribute

Interested in contributing to MolPlay? Contact us at: molplay-contribute@smplinux.de

Social Media

  • Twitter: @UnityMol

Principal Investigator

Marc Baaden - Theoretical Biochemistry Lab, CNRS - Paris, France - Email: baaden at smplinux.de

Return to Home

Core MolPlay Citations

  • Work in progress.. stay tuned!

Posters

UnityMol: Simulation et Visualisation Interactive à des fins d’Enseignement et de Recherche 19ème congrès Groupe Graphisme et Modélisation Moléculaire (GGMM 2015)

Related work

Examples

This video provides another interactive simulation example.

Explore the power of interactive molecular dynamics with MolPlay!

This video demonstrates an all-atom interactive simulation of a fully hydrated DMPC lipid bilayer using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Changing the representation to individualize lipids
  • Playing with periodic boundary conditions
  • Perturbing the system significantly and observing its relaxation

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular simulations with MolPlay!

This video demonstrates an interactive membrane insertion run of a membrane protein using BioSpring and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in membrane protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Work with a rigid body protein model and an implicit membrane
  • Use advanced plotting functionalities
  • Use multiple scene projections for a comprehensive overview

Click like 👍 on the video if you’re excited to get started! You can find the complete MolPlay Essentials playlist on YouTube!

Episodes

  1. Getting MolPlay to boot on your computer
  2. The Basics of MolPlay
  3. The Basics of Interactive Simulations: coarse-grained membrane patch
  4. The Basics of Interactive Simulations: a simple peptide in water
  5. The Basics of Interactive Simulations: protein in water
  6. More Interactive Simulations: a lipid bilayer in water
  7. More Interactive Simulations: an enzyme in water
  8. More Interactive Simulations: enzyme allostery with elastic networks
  9. Advanced Interactive Simulations: protein-DNA elastic network docking
  10. Advanced Interactive Simulations: UNILIPID membrane protein insertion
  11. Advanced Interactive Simulations: dynamics of a complex double membrane system

This video provides another interactive simulation example.

Explore the power of interactive molecular dynamics with MolPlay!

This video demonstrates an all-atom interactive simulation of a short deca-alanin peptide in water using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in a simple interactive simulation experience.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Hide water representations
  • Adjusting pulling force
  • Switch between UnityMol and Gromacs windows
  • writing a snapshot to a pdb file

Click like 👍 on the video if you’re excited to get started!

This video shows the very first step to get MolPlay started! In this preparatory video, I illustrate the boot process necessary to start MolPlay.

You’ll learn:

  • The steps during the boot process
  • The screens that you should see during boot up
  • The landing page once MolPlay is booted
  • Approximately how long the boot process takes

Whether you’re a researcher, educator, or student, this video will help you with the very first steps in getting MolPlay booted so you can enhoy it’s interactive molecular simulations and analyses features.

Let’s take a look at how you can boot up MolPlay!

Click like 👍 on the video if you’re excited to get started!

This video opens the MolPlay video walkthrough series! In this first video, I guide you through the initial process to work with MolPlay and demonstrate key functionalities for navigating the user interface.

You’ll learn:

  • What to expect when MolPlay first boots up
  • How to navigate through the main menu system
  • Exploring and selecting from available examples
  • Basic interface controls and hotkeys

Whether you’re a researcher, educator, or student, this video will help you get started with MolPlay’s interactive molecular simulations and analyses. Stay tuned for more in-depth tutorials on specific examples and advanced features!

Let’s take a look at how you can quickly get started using MolPlay!

Click like 👍 on the video if you’re excited to get started!

This video provides a first interactive simulation example.

Explore the power of interactive molecular dynamics with MolPlay!

This video demonstrates a coarse-grained simulation of transmembrane peptides in a membrane environment using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in membrane protein dynamics and interactive simulation techniques.

This video also features an explanation of the basic user interface functionalities of UnityMol to show and hide representations and tune visual appearance.

You’ll learn:

  • Manipulating the view
  • Changing representations, hiding, deleting and creating them
  • Pulling on atoms and tuning your applied force

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular simulations with MolPlay!

This video demonstrates an elastic network docking simulation of a DNA fragment onto a protein using BioSpring and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Work with an electrostatic field driving docking
  • Use simplified elastic network representations for efficient docking
  • Get visual guidance to speed up complex operations

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular simulations with MolPlay!

This video demonstrates an elastic network interactive simulation of the guanylate kinase enzyme using BioSpring and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Probing allosteric interactions in an enzyme
  • Triggering complex long-range functional motions
  • Discovering augmented elastic networks

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular dynamics with MolPlay!

This video demonstrates an all-atom interactive simulation of bovine pancreatic trypsin inhibitor BPTI in water using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Manipulating the representations
  • Adjusting pulling force
  • Pulling on explicit atom or abstracted cartoon representations

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular dynamics with MolPlay!

This video demonstrates an all-atom interactive simulation of the guanylate kinase enzyme in water using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Playing with visual effects such as outline
  • Working on large conformational changes

Click like 👍 on the video if you’re excited to get started!

This video provides another interactive simulation example.

Explore the power of interactive molecular simulations with MolPlay!

This video demonstrates an interactive molecular dynamics simulation of a complex double bilayer system using Gromacs and UnityMol. Watch as we interactively manipulate molecules, showcasing the intuitive interface and real-time feedback of MolPlay.

Perfect for researchers and students interested in membrane protein dynamics and interactive simulation techniques.

This video also features some explanations of UnityMol functionalities.

You’ll learn:

  • Tuning colors and representations
  • Adjusting the forces and probing interactions
  • Crashing the simulation 😂

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive membrane simulation

Start up the DMPC-IMD-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The lipid bilayer is shown as multi-colored hyperballs, while the water molecules are shown as white-red-white colored triangle segments.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Lines title line in the model_water submenu.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to pull out a lipid molecule from the membrane to various degrees
  • assess if the lipid is able to insert back into the membrane
  • pull strongly on a lipid to create a perturbation in the membrane and observe how it propagates and/or heals over time
  • pull lipids across periodic boundaries, for instance laterally, to see the periodicity-related hopping

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Changing the representation to individualize lipids
  • Playing with periodic boundary conditions
  • Perturbing the system significantly and observing its relaxation

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Biospring for this tutorial.

The exercise: interactive membrane protein insertion into a bilayer

Start up the OMPT-UNILIPID-v1 exercise using the graphical interface. UnityMol will open, Biospring will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The protein is shown as a colored surface inside placeholders for the implicit membrane. Two projections of the protein insertion are shown to immediately see the orientation normal to the membrane.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. The main task is to:

  • insert the protein in various ways into the membrane and observe the arrangements it prefers
  • compare in particular insertion depths and angles
  • try to pull the protein out of the membrane, or put it flat in the middle of the bilayer and observe what happens

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Work with a rigid body protein model and an implicit membrane
  • Use advanced plotting functionalities
  • Use multiple scene projections for a comprehensive overview

Click like 👍 on the video if you’re excited to get started! Below are links to complete, detailed documentation pages for each example. You can find an overview here, the video walkthroughs here.

Episodes

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive peptide simulation

Start up the DECAALA-IMD-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The peptide is shown as multi-colored hyperballs, superposed with the cartoon representation, while the water molecules are shown as white-red-white colored triangle segments.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Line title line in the model_water submenu.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to manipulate different parts of the peptide: it’s two extremities, or a part in the middle
  • observe how applied forces propagate in this system
  • pull in different directions and observe the response
  • try to make a knot with the peptide chain

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Hide water representations
  • Adjusting pulling force
  • Switch between UnityMol and Gromacs windows
  • writing a snapshot to a pdb file

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive membrane peptide simulation

Start up the vamp-cg-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions will be provided live during the session.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Point title line in the model_water submenu.

The peptide is multi-colored, one lipid molecule is colored in green, one ion is colored in yellow. All other molecular species, in particular the lipid bilayer, are in white.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to extract the peptide out of the bilayer. Is it doable?
  • try to pull out the lipid a little, see how easily it slips back in, then pull it out completely
  • how do the lipid and peptide membrane anchoring compare?
  • try to pull the ion through the bilayer

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • other than for quitting or starting up (usually with the go() command, you will not really need the console. You can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Manipulating the view
  • Changing representations, hiding, deleting and creating them
  • Pulling on atoms and tuning your applied force

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Biospring for this tutorial.

The exercise: interactive DNA docking to a protein

Start up the PROT-DNA-BS-v1 exercise using the graphical interface. UnityMol will open, Biospring will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The fixed protein and the flexible DNA are shown as multi-colored beads. A transparent DNA surface is shown for guidance to indicate the actual solution to the docking problem.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. The main task is to:

  • dock the DNA onto the protein, getting as close as possible to the true solution
  • note this is a coarse-grained representation and a perfect match may not be possible
  • pay attention to when the electrostatic background field of the protein starts to kick in the process and automagically drive the DNA towards it location

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Work with an electrostatic field driving docking
  • Use simplified elastic network representations for efficient docking
  • Get visual guidance to speed up complex operations

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Biospring for this tutorial.

The exercise: interactive enzyme manipulation

Start up the GK-BS-v1 exercise using the graphical interface. UnityMol will open, Biospring will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The protein is shown as multi-colored beads.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to further open or close the binding cleft of the enzyme
  • observe how applied forces propagate in this allosteric system
  • identify sites that are strongly inter-connected across the structure
  • compare to observations with the all-atom simulation equivalent that is provided as another demo
  • trap the system in a metastable state by using the nonbonded interactions as barrier to escape

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Probing allosteric interactions in an enzyme
  • Triggering complex long-range functional motions
  • Discovering augmented elastic networks

Click like 👍 on the video if you’re excited to get started!

Welcome!

If this is your first time here, this channel is about crafting your own system configuration using free and open source tools like GNU Emacs, GNU Guix, and more!

I’ve made about 50 videos on Emacs for this channel, but the one thing I haven’t done yet is make a video that’s strictly for those who have either never used Emacs or only used it very little.

In this video, I’m going to give you exactly what you need to get started using Emacs and understand the basic concepts and key bindings of the editor. I know this video might seem long, but I’ve got chapter markers in the timeline below so that you can easily jump around to different parts if you want to use it as a reference.

Let’s get started!

If you find this guide helpful, please consider supporting MolPlay via the links on the How to Help page!

Installation

Emacs can be installed on GNU/Linux, macOS and Windows.

The latest stable version is 27.1, so it’s best to try and find that version for your operating system. However, much of what I will show you should work on many previous versions of Emacs.

GNU/Linux

GNU/Linux is the easiest OS for installing and using Emacs. It is available in (pretty much) every Linux distribution’s package manager, typically under the name emacs, so it’s easy to find!

Just keep in mind that your distribution may have an older version of Emacs in their package repository (possibly version 26) so you might need to find another source to install the latest version.

  • GUI or Terminal?

    On Linux, there are often emacs-no-x packages that don’t include the graphical UI if you don’t need it. There are no major differences in behavior between GUI and terminal Emacs so you can use whichever you feel most comfortable with.

    One major benefit of graphical Emacs is the ability to use multiple fonts for text display and a full range of colors. This is why my presentation looks the way it does!

macOS

Installation on macOS with Homebrew is easy! There’s a default recipe called emacs which can be installed with the following command:

brew install --cask emacs

An alternative recipe called Emacs Plus provides additional options for customizing your Emacs install, check out its README to learn how to use it.

You can also download a .app for Emacs from the site https://emacsformacosx.com/

Windows

On Windows, you can download Emacs directly from the GNU website!

If you use MSYS2, you can install it using Pacman:

pacman -S mingw-w64-x86_64-emacs

You can also install it using Chocolatey:

choco install emacs

Basic Concepts

Let’s talk about the basic things you need to understand about Emacs to use it effectively!

The User Interface

Emacs has a menu and tool bar like many conventional graphical programs. They can be useful at first to learn the functionality that is available, but I think that you won’t need them for very long!

Note that the menu bar actually is present in the terminal version of Emacs!

If you’re coming from another IDE or editor, you might expect to see a file tree on the left side of the window. This isn’t provided by Emacs by default, but it’s easy to add through community packages! There are other ways to show files in Emacs that are even better, in my opinion.

Emacs Manual: The Menu Bar Emacs Manual: Tool Bars

Windows and Frames

The concept of a “window” is different in Emacs than what you probably know from using graphical computing environments. In modern desktop environments, a window is a graphical interface of a program which is managed by the window manager of the desktop environment, usually with buttons to close or minimize it.

In Emacs, a window is more like a “pane” in the desktop window of Emacs. A window in Emacs always displays a buffer. Windows can also be split in arbitrary ways, both horizontally and vertically, so that you can create whatever window layout you like. Each of these windows can show different buffers or even the same buffer!

What you think of as a window in typical desktop environments, Emacs calls a “frame”! Emacs can display multiple frames (desktop windows) at the same time. These frames all share the same internal state and buffers. Some people never use more than one frame, others use many frames. It all depends on how you prefer to use Emacs!

Emacs Manual: Concepts of Emacs Windows Emacs Manual: Frames and Graphical Displays

Buffers

A buffer holds text and other information that is usually displayed in a window. The most obvious example is a buffer that contains the contents of a file for the purpose of editing it.

However, there are many types of special buffers that are used only for displaying temporary information or user interface elements! The Magit package provides an excellent interface for Git inside of a custom Emacs buffer.

Buffers can be one of the more confusing aspects of Emacs to beginners because you don’t have any indication of what buffers are open until you try to switch to another buffer.

Some important buffers you will definitely see when you use Emacs:

  • *scratch* - Basically like a blank sheet of paper for taking notes, writing temporary Emacs Lisp expressions, or whatever you want!
  • *Messages* - This contains log messages and all the text that gets written to the echo area at the bottom of the screen
  • *Warnings* - A list of potential errors that may be displayed from time to time

Emacs Manual: Using Multiple Buffers

The Mode Line

When coming from other editors, you might expect to see a “status bar” at the bottom of the main editor window that gives you information about the state of the current buffer and the editor. Emacs also has this, but does it slightly differently!

The mode line is a line of text displayed at the bottom of every window (pane) in Emacs. It displays information about the current buffer you’re viewing and also global status information:

  • The line and column of the cursor
  • The major mode of the buffer
  • The minor modes active in the buffer (or globally in Emacs)

The major difference between the mode line and the status bar is that there is a mode line under every visible window, so when you split the window, you’ll see multiple mode lines! There are benefits to this even though it takes up extra screen space.

The mode line is fully customizable and can be made to look very nice either through your own configuration or from community packages!

Emacs Manual: The Mode Line

The Echo Area and Minibuffer

The echo area is a line at the very bottom of the frame which displays informational text when you perform certain operations in Emacs.

It also turns into a prompt at times when you run a command that needs to accept user input; this prompt is called the “minibuffer”! You can think of it like a temporary buffer that is used for interacting with the user. It can also expand its height to be slightly larger than a single line when needed.

One example of the minibuffer in use can be seen when we attempt to run a command by name.

Emacs Manual: The Echo Area Emacs Manual: The Minibuffer

Commands

In Emacs, there are a variety of built in commands that enable a lot of interesting and useful behavior, especially things that aren’t specifically for text editing! You can think of Emacs as more of a personal productivity suite than a plain text editor.

To run a command, you can press Alt+x (or M-x in Emacs lingo). This will bring up a prompt where you can type in the name of the command to be run.

This prompt features a completion system (like many prompts in Emacs) so you can press TAB to show all possible commands that you can run.

Try out the following commands:

New commands can be installed into Emacs using community packages, and you can also write your own! We’ll cover this in another video.

Emacs Manual: Keys and Commands

Major and Minor Modes

In other editors, there is usually functionality that gets enabled for files with a particular extension, e.g. Python programming functionality for .py files.

Emacs also has this! This functionality is provided through something called a “major mode.” A major mode provides the primary functionality for a particular buffer and it is usually activated based on the extension of a file you open in that buffer.

As we’ve seen before, some buffers are not files and have special functionality! This functionality also comes from custom major modes. In this case, the major mode is being activated using a command, typically with the name of the mode.

The major mode is what we see down in the mode line which indicates what type of buffer we are looking it.

There can only be one major mode active in a buffer at once!

Emacs Manual: Major and Minor Modes

Minor Modes

Minor modes are different in that many minor modes can be active in a single buffer, and even globally across Emacs.

Minor modes typically provide helpful functionality that isn’t specific to the major mode of the current buffer, but things you might need to customize your workflow or even change the display of things in Emacs.

Try out hl-line-mode and global-hl-line-mode as an example of local and global minor modes!

Basic Key Bindings

Emacs is most efficient and productive when you focus on keyboard-based control. The key binding system in Emacs is one of the most flexible and customizable I’ve ever seen; once you start customizing Emacs’ bindings for your own personal workflow, you’ll see how limited other programs are by comparison.

I’m going to cover some basic keybindings that you’ll want to learn for basic everyday use. In future videos I’ll go much more in depth about Emacs’ own special keybindings that you can use to make text editing and your general workflow a lot more efficient!

Understanding Emacs Key Bindings

You will often see people write out the key bindings in a specific format when explaining things. Let’s quickly cover what everything means since you will see it often!

  • C-c - hold the Ctrl key and press the letter ’c’
  • C-x C-s - hold the Ctrl key and press the letters ’x’ then ’s’ while still holding Ctrl
  • C-x b - hold the Ctrl key and press ’x’, then release Ctrl and press ’b’
  • M-x - hold the Alt key and press ’x’ (you will see this often like M-x find-file)
  • M-g C-s - hold the Alt key and press the letter ’g’, release Alt, hold Ctrl and press ’s’

These single-letters can be interpreted as follows:

  • C - Ctrl
  • M - Alt (Meta in Emacs lingo)
  • S - Shift
  • s - Super (Windows key)

Generally when you see a capital C, M, or S hyphened together with another key, those should all be pressed together, i.e. C-M-s or M-S-d.

One last important thing to mention are the two main key prefixes that have special meaning:

  • C-x - This is a prefix for all of Emacs’ primary key bindings like C-x C-f
  • C-c - This is considered to be a combination of bindings created by active major and minor modes or by the user!

Emacs Manual: Key Sequences

Opening and Saving Files

To open a file in Emacs, press C-x C-f (find-file). This will bring up a prompt in the minibuffer so that you can type in the file name.

You can also navigate through directories by deleting the directory path and using TAB to complete parts of directory and file names!

When you’ve opened a file into a buffer, you can make edits to it and then save the file with C-x C-s (save-buffer).

You can also save the buffer to a different file (“Save as” in other editors) with C-x C-w (write-file).

Emacs Manual: Visiting Files Emacs Manual: Saving Buffers

Switching Buffers

As we talked about before, Emacs can have many buffers open at the same time but you will only see the buffers that are currently open in a window.

If you want to switch between buffers, you can use the C-x b (switch-to-buffer) binding to be prompted for a buffer to switch to. This prompt features completions, so press TAB at any time to see the possible buffers based on the current text you’ve entered.

There’s also C-x C-b (list-buffers) which will show you a full listing of all the buffers that are open in Emacs.

Once you start customizing Emacs, there are a variety of packages that make this even easier and enable you to customize it for your workflow!

You can also easily move between buffers using the C-x <left arrow> and C x <right arrow> keys!

(See, I remembered :)

Emacs Manual: Listing Existing Buffers

Cutting and Copying Text

This is an area which always confuses new Emacs users! Many programs across Linux and Windows use C-c to copy text and C-x to copy and delete the selected text (cut).

This is not the case in Emacs! As we mentioned before, these two key bindings are actually special key prefixes in Emacs so they aren’t used for cut and copy.

In Emacs, to “kill” text means to “cut” it, basically copy it and delete it. The most common thing you will do is to kill a region, either to just delete the text or to cut it to be pasted somewhere else.

But to kill a region, you first need to select one! You can begin marking a region using C-SPC (set-mark-command) then use the arrow keys to move the cursor to expand or shrink the selection.

Now that you have a region selected, you can use C-w (kill-region) to cut the text or M-w (kill-ring-save) to copy it.

One interesting aspect of killing text is that it gets stored in the “kill ring” to be used later. We will discuss this in a future episode!

Emacs Manual: Killing and Moving Text

Pasting Text

In typical Emacs style, the concept of “pasting” text has a different name: “yank.”

You can press C-y to yank (paste) the most recent text from the kill ring back into this buffer.

Emacs Manual: Yanking

CUA Mode

If you must have the old C-c (copy) C-x (cut) and C-v (paste) behavior that you’re familiar with, you can turn on the CUA mode using the menu item “Options -> Cut/Paste with C-x/C-c/C-v (CUA Mode)”.

This will make the cut and copy key bindings work when you’ve selected a region of text with the mouse or keyboard. It will also turn C-v into a Paste keybinding which will do what you expect!

Emacs Manual: CUA Bindings

Undo and Redo

You can undo changes to a buffer by pressing C-_ (Ctrl+underscore) to run the undo command. An alternative binding which is easier to press is C-/

To redo something that you deleted with undo, press C-g C-_, but note that pressing C-_ again right after this will keep redoing things that you’ve undo’ed! It will then cycle back to undoing once you’ve reached the end of your redo history.

As you can see, Emacs’ undo system operates differently than what you’re used to! There are packages that can replace this with more understood behavior; we will talk about them in another video.

Emacs Manual: Undo StackOverflow answer about how to undo and redo

Cancelling Operations

Sometimes you might run a command that you want to cancel before it completes. For this you can press C-g (Ctrl+g). This interrupts any active command and brings you back to a normal state in Emacs.

One example is showing any prompt, like the one for the (find-file) command. If you decide you want to cancel that prompt, just press C-g.

Sometimes you might need to press it repeatedly before you can fully get back to normal!

If Emacs ever seems to be hung, try this key binding first before killing the process.

Learning More Key Bindings

There are two ways to figure out more key bindings for Emacs, especially when editing different types of files:

  • As we talked about before, look at the menu bar for common commands and their keys
  • Run the command describe-bindings
  • Run the command describe-key (C-h k) to learn what command is bound to a specific key combination!

The Help System

We’ll cover this in detail in another video, but the whole Emacs manual is built in to Emacs and you can find help on any function or variable in Emacs using the describe-* functions!

Configuring Emacs

There are two ways to configure Emacs to customize its behavior. We won’t go in depth on either of these in this video, I just want to point them out to you since it will be an obvious question you might have!

The Customization UI

Emacs provides a full user interface for customizing all options in the editor. To access it, run the command customize.

You can either navigate through the settings hierarchy to see what is available or put your cursor in the search box, type a term, then press ENTER.

Each setting will have an input field of some kind that you can change by putting your cursor in the box and editing the value. Once you’re finished editing, you can click the “Apply” button to save the changes.

Try searching for “tab width” in the search box!

The init.el file

Once you’ve become sufficiently comfortable with Emacs, you’ll want to investigate how to configure Emacs using the init.el file. Emacs can be completely configured and extended using Lisp code!

In your configuration file, you can write your own functions and commands to add new behavior to Emacs. This is where a lot of the true power of Emacs comes into play!

Check out my series Emacs From Scratch if you want to learn how to build up a modern Emacs configuration from scratch using the init.el file and a bunch of community packages.

What’s next?

This video should give you much of what you need to know to start using Emacs! However, we weren’t able to cover many things in depth.

I’m going to start making more videos in a new series called Emacs Essentials which will cover many of these topics at a deeper level so that you can go from being a beginner at Emacs to an advanced user by the end of it.

I’ve already been making a ton of other videos about Emacs on this channel, so you should definitely check out my playlists if you want to learn a lot more while I’m building out the Emacs Essentials series:

Also, if you want to know a little more about what Emacs is capable of, check out my video 5 Reasons to Learn Emacs in 2021!

Demo Configuration

This configuration is not intended to be used! However, if you’re curious:

Put this text in a file called demo.el:

;; Make the colors and text less eye-strainy
(load-theme 'tango-dark t)
(set-face-attribute 'default nil :height 200)

;; I mindlessly press ESC, so stop me from wreaking havoc
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)

Run Emacs with the configuration:

emacs -Q -l demo.el

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive protein simulation

Start up the BPTI-IMD-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The protein is shown as multi-colored hyperballs, while the water molecules are shown as white-red-white colored triangle segments and the counter-ions as green spheres.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Line title line in the model_water submenu.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to manipulate different parts of the protein: side-chains, backbone, secondary structure elements, loops, etc.
  • observe how applied forces propagate in this system
  • try to pull the termini apart, they are firmly held together
  • you can manipulate the atomistic hyperballs, or the cartoon representation for comparison

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Manipulating the representations
  • Adjusting pulling force
  • Pulling on explicit atom or abstracted cartoon representations

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive enzyme simulation

Start up the GK-IMD-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

The protein is shown as multi-colored hyperballs, while the water molecules are shown as white-red-white colored triangle segments.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Line title line in the model_water submenu.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to further open or close the binding cleft of the enzyme
  • observe how applied forces propagate in this allosteric system
  • identify sites that are strongly inter-connected across the structure
  • compare to obsevations with the coarse-grained simulation equivalent that is provided as another demo

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Playing with visual effects such as outline
  • Working on large conformational changes

Click like 👍 on the video if you’re excited to get started!

Getting started

We will use UnityMol and Gromacs for this tutorial.

The exercise: interactive double membrane protein bundle simulation

Start up the SNARE-IMD-v1 exercise using the graphical interface. UnityMol will open, Gromacs will start up in the background, and the visualization will connect to the running simulation. More instructions are provided in the video walkthrough.

After an initial visual exploration, you may want to get rid of the water molecules, to simplify the manipulation of the trajectory. You can achieve this from the menu, by clicking on the eye icon next to the Point title line in the model_water submenu.

The protein bundle is shown as multi-colored beads, while the two lipid bilayers are in white.

When you manipulate the simulation, be gentle, otherwise the simulation will crash and you need to start over. Common tasks may be:

  • try to pull on the end of the protein bundle and observe impact on the bilayers
  • try to detach the bundle that is in contact with the lipid bilayer from the membrane
  • examine and manipulate the membrane-inserted transmembrane peptide domains

Minimal UnityMol tips

  • on the right hand side you have a python console. You can quit each tutorial by typing q() plus enter.
  • you can modulate the applied force with the f(value) shortcut, where value is something in the range from roughly 0.1 to 6.0. You can check for the current value with fp().
  • if you want to save the coordinates of the current scene, use s(), which writes snap.pdb in the current directory (it is indicated in the console upon saving)
  • if you do not need the console, you can hide it with the arrow in a blue circle
  • on the left hand side you have the main graphical menu. you can control the visualization, trajectory player speed and a few other settings, such as visual effects
  • the menu can also be hidden with it’s attached arrow in a blue circle, when you don’t need it

Video Walkthrough

You’ll learn:

  • Tuning colors and representations
  • Adjusting the forces and probing interactions
  • Crashing the simulation 😂

Click like 👍 on the video if you’re excited to get started! Today the first ISO image of MolPlay is released here on the website. Now everyone can download, install and test the MolPlay virtual molecular playground!

The molplay_v1.0.img.gz image is available for download here. The md5sum checksum is 992287f3d2bceed9ff8e87b3e6d09f42. After putting together the first really working prototype, MolPlay was today tested at an international training workshop in Iasi, Romania. Feedback was overall very positive and no major issues were observed. A good start! Hi! Welcome to the brand new MolPlay website designed by Marc Baaden. I am excited to bring MolPlay to you and hope you will have fun with the software and also do some exciting research and interactive simulations with it. Feedback is always welcome.

MolPlay Architecture

MolPlay is built on a modular architecture that combines several key components to create a portable, user-friendly environment.

Core Components

  • Batocera Linux
    • Serves as the base operating system
    • Provides a lightweight and efficient runtime environment
    • Originally designed for gaming and emulation
    • Offers good hardware compatibility across various PC configurations
  • Guix Package Manager
    • Integrated into the Batocera/MolPlay environment
    • Manages and distributes scientific software
    • Ensures consistent availability of dependencies and libraries
    • Enables reproducible software environments
  • Emulation Station Frontend
    • Provides a user-friendly interface for accessing tools and examples
    • Offers an intuitive menu system for navigation
    • Customized to present applications as selectable items

Software Stack

The full software stack necessary for MolPlay applications is accessible through Guix:

  • Native packages (e.g., Gromacs)
  • Custom-compiled software (e.g., BioSpring)
  • Runtime environments with specific dependencies

User Experience

  • Boots directly from a USB stick
  • No complex installation or configuration required
  • Presents a catalog of examples and use cases
  • Allows seamless exploration and implementation

Customization and Extension

  • Python scripting approach for launching experiences
  • Each “script” can include:
    • Short description
    • Image
    • Video
    • Documentation
  • Metadata support (e.g., language of instructions)
  • Easily expandable catalog of experiments

Hardware Integration through Batocera

  • Manages configuration of input devices
  • Handles graphics card setup
  • Configures sound and network settings
  • Enables Wi-Fi connectivity

Future Potential

  • Modular design facilitates integration with different hardware configurations
  • Possibility to separate computational tasks from visualization/interaction
  • Potential for future integration with specialized hardware (e.g., VR environments, large-scale display walls)

Conclusion

MolPlay’s architecture combines the stability of Batocera Linux, the reproducibility of Guix package management, and a user-friendly interface to create a portable, self-contained environment. This design lowers technical barriers and promotes wider adoption of interactive molecular simulations in research and education.

What is MolPlay?

MolPlay is an innovative platform designed to make interactive molecular simulations and analyses (IMSA) accessible to a wide range of users. It combines powerful computational techniques with an intuitive interface, allowing researchers, educators, and students to explore complex molecular systems in real-time.

Origins and Development

MolPlay was developed to address the underutilization of IMSA techniques in research and education. It builds on over a decade of expertise in the field, consolidating various tools and approaches into a single, user-friendly platform.

Technical Overview

MolPlay is built on:

Applications

  • Research: Hypothesis generation and preliminary investigations
  • Education: Hands-on learning experiences in molecular biology and biochemistry
  • Outreach: Public engagement at science fairs and museums

Learn how to use MolPlay

How to Use MolPlay: A Detailed Walkthrough

System Requirements

Before you begin, ensure your system meets the following requirements:

  • CPU: 64-bit x86_64 processor (recommended)
  • RAM: 1 GB minimum, 2 GB or more recommended
  • Graphics Card: Compatible GPU required
    • Refer to the GPU compatibility table in the documentation
    • Integrated graphics may work but dedicated GPUs are preferred for better performance
  • USB Port: Available USB port for the bootable drive
  • BIOS: Ability to boot from USB (may require changing boot order in BIOS settings)

Installation

  • Overview
    1. Download the MolPlay ISO image from the Download page
    2. Create a bootable USB stick using the ISO image. You need at least a 16 GB USB stick. Use software like Rufus or Etcher
    3. Boot your computer from the MolPlay USB stick
  • Downloading MolPlay
    1. Navigate to the Download page on the MolPlay website
    2. Locate the latest version of the MolPlay ISO image
    3. Click the download link and save the ISO file to your computer
    4. Verify the download by checking the MD5 checksum
  • Creating a Bootable USB Drive

    You’ll need a USB drive with at least 16 GB capacity. Warning: This process will erase all data on the USB drive.

    • Using Rufus (Windows):
      1. Download and install Rufus from https://rufus.ie/
      2. Insert your USB drive
      3. Open Rufus
      4. In Rufus, select your USB drive in the “Device” dropdown
      5. Click “SELECT” and choose the MolPlay ISO file that you downloaded
      6. Click “Start” and wait for the process to complete
    • Using Etcher (Windows, macOS, Linux):
      1. Download and install Etcher from https://www.balena.io/etcher/
      2. Insert your USB drive
      3. Open Etcher
      4. Click “Flash from file” and select the MolPlay ISO you downloaded
      5. Click “Select target” and choose your USB drive
      6. Click “Flash!” and wait for the process to complete
    • Note on USB Drive Partition Size

      By default, MolPlay creates a fixed-size partition designed for 16 GB USB drives. If your USB drive is larger, you can enable automatic resizing to utilize the full capacity:

      Option 1: Edit before booting

      1. After creating the bootable USB, mount it on a Mac/Windows/Linux system
      2. Locate and edit the file `/boot/batocera-boot.conf`
      3. Find the line `#autoresize=true` and uncomment it (remove the `#`)
      4. Save the file and safely eject the USB drive

      Option 2: Edit after booting MolPlay

      1. Boot into MolPlay
      2. Open a terminal (press F1)
      3. Run the following commands:
      mount -o remount,rw /boot/
      nano /boot/batocera-boot.conf
      1. Find the line #autoresize=true and uncomment it (remove the `#`)
      2. Save the file (Ctrl+X, then Y, then Enter)
      3. Reboot the system

      After enabling autoresize and rebooting, MolPlay will automatically expand to use the full capacity of your USB drive.

  • Booting from the MolPlay USB
    1. Insert the MolPlay USB drive into your computer
    2. Restart your computer
    3. During startup, press the key to enter the boot menu (often F12, F2, or Del - check your computer’s manual).
    4. In the boot menu, select the USB drive as the boot device. If it does not show up, you may need to switch between legacy and UEFI boot modes, depending on your computer.
    5. Your computer should now boot into MolPlay

    If you encounter issues booting, consult the troubleshooting guide or drop us an email.

Navigating the MolPlay Interface

  • Overview
    1. Use the Emulation Station menu to browse available examples
    2. Check available instructions on-screen for each experiment
    3. Select an example to launch the interactive simulation
  • Menu navigation: launching your first simulation

    Once MolPlay has booted successfully, you’ll see the Emulation Station interface. Right now there is a single collection of examples available. There is also background music playing.

    1. From the main collection, use the Enter key to see all available examples
    2. Use Up / Down arrow keys to browse available simulations
      • There is an image and a brief description for each example; the description is read by a synthetic computer voice every time a new line is selected
      • Use a long press on Enter to bring up the extended menu for the selected example. This feature gives you access to a written manual by choosing View Game Manual or to an image by choosing View Game Media
      • Press Enter to launch the selected simulation
    3. Press Esc to go back from the example submenu to the main menu
    • Setup and configuration:

      The general Batocera Linux and EmulationStation functionalities are accessible. You can for instance access the EmulationStation main menu using the spacebar key. An overview is given in the Batocera wiki page on EmulationStation. You should also consult this wiki if you have any trouble or are looking for assistance with setup, for instance to make audio work or configure network accessibility.

      • Documentation: View the user manual using the Quick Access menu via the backspace key in the main menu (not the “game” submenu)
      • Settings: Adjust system and display settings using the EmulationStation main menu described above
  • Interacting with Simulations

    Each simulation may have slightly different controls, but generally:

    • Mouse, left-click and drag in the void: Rotate the view
    • Left-click and drag on an atom: Apply forces to molecules
    • MIddle-click and drag: pan the view
    • Right-click and drag: Zoom in/out
    • Scroll wheel: Zoom in/out
    • Ctrl + X: Exit the simulation and return to the menu

    Refer to the instructions or documentation for simulation-specific controls.

Exploring MolPlay

  • Tips for Beginners
    • Start with simpler examples like “Deca-alanine helix in water” before moving to more complex systems
    • Take time to read the documentation for each example before launching
    • Experiment with different interactions and observe how the system responds
    • Don’t hesitate to restart a simulation if you want to try a different approach

    A description for the examples is provided here.

  • Exploring More Examples

    As you become comfortable with basic simulations, explore more complex examples:

    1. Return to the main menu by pressing Ctrl + X when in a simulation
    2. You may also go back to the Main menu via Esc and/or re-select “Examples” with Enter
    3. Browse through more advanced simulations like “VAMP-CG-v1” or “FepA iron transporter”
    4. Challenge yourself with different molecular systems and interaction scenarios

Accessing Help and Documentation

If you need additional assistance:

  1. From the main menu, select “Documentation”
  2. Browse through available topics for detailed information
  3. Look for video tutorials that may be available for specific examples

If you do get stuck, do not panic! You can always drop us an email.

Remember, practice and experimentation are key to mastering interactive molecular simulations with MolPlay!

Explore MolPlay examples

Credits and Attribution

The MolPlay website uses some content and tools created by others under permissive licenses. When I put this site together, I took much inspiration and resources across the internet. Here is a list (I hope not to forget anything too important – tell me if you notice I used some of your tools or resources and didn’t credit you!).

Website editing and generation from org-mode files

Heavy inspiration from SystemCrafter’s website and the many resources it provides. I have followed many of David Wilson’s Youtube videos and started the basic layout of this site from the available Codeberg repository. This was essential for me to make the transition from the previous RapidWeaver website to the current one happen. I made slight adaptations, learning all along the way how things actually worked under the hood.

For the style (colors and fonts):

Again, I duplicated the style of SystemCrafter’s website as I liked the color and font setup very much. I copied it almost literally over to this website’s stylesheets etc.. I hope David Wilson will forgive me the heavy inspiration I took from his style. The fonts -as mentioned- are the same as used by David Wilson on the original SystemCrafters, namely JetBrains Mono (SIL OFL-1.1 license) and Iosevka Aile (SIL OFL-1.1 license). The color theme, I believe, is a mix between the dark Modus theme modus-vivendi and the doom-palenight theme from Doom themes.

General tools and workflows

The usual way I work requires a large number of tools that I cannot all thank here. Among the essential ones figures GNU Emacs and a broad range of packages for it such as org-mode.

Disclaimers

All information on this website is shared as is, without any warranties and only based on limited experience on available computers and setups. Before applying anything to your specific case and re-using snippets of code, be aware that it is your responsibility to make sure nothing bad may happen (data loss, unintended information sharing, ..).