Less than a year ago we released Flare for structure-based design. At the time, we promised you that a Python API would be central to future of this novel application. In keeping with that promise, Flare V2 will include a new Flare Python API, new science and significant improvements to functionality and usability.
Let’s have a quick look at the Flare Python API and what it can do for you.
What is the Flare Python API?
The Flare Python API enables Flare functionality to be accessed from Python and for you to customize the Flare interface. Python scripts can be run from the Flare graphical user interface (GUI) or by the command line pyFlare.
To access the power of Python from the Flare GUI we created a dedicated new tabbed menu named ‘Python’ (Figure 1).
Figure 1: The Python tabbed menu in Flare.
- Run simple, one line scripts from the Python console
- Write, load, run and save one or more scripts using the Python Interpreter
- Manage the Python scripts using the Manager and Log buttons
- Access the built-in Python documentation.
As you create your own scripts, you can choose to add them to Flare as new ‘buttons’ either in a new dedicated tab or in an existing tab.
How can Python scripts written with the Flare API make my project life easier?
Automate routine workflow
With the Flare Python API, you can automate routine workflows which you normally carry out for every project. For example, the ‘Prep_n_align’ script (Figure 2) starts from a Flare project where you have imported your protein structures, sequence aligns and superimposes all proteins to the first, then prepares the proteins and extracts the ligands, and finally adds a surface to the active site and focuses the view on the ligands. It also creates a button in a new ‘My Tab’ ribbon so that it takes just a click to launch the script whenever you need it.
Figure 2: A Python script to automate protein preparation, alignment and display.
Add functionality to your Flare project
Importing standard Python libraries will significantly enhance the capabilities of Flare. For example, using the matplotlib library, you can easily write a script which will create an x/y plot from data columns in your Flare project.
Make your workflows talk to Flare
Alongside the GUI interface to the Python API is a new command line binary ‘pyFlare’. This will give you access to all Flare methods directly from the command line enabling you to automate and script your workflows.
Sounds great, but what about the science?
It’s not like Cresset to forget about the science and Flare V2 makes no exception. Stay tuned for the release announcement next month to find out more about ensemble docking, electrostatic complementarity, new protein and ligand surfaces, and lots of improvements to functionality and usability.