ISB Logo BioTapestry Caltech Logo

Getting Started
BioTapestry in Action
Running BioTapestry Online
What's New
Problems Running It?
Supported Platforms
BioTapestry for Gaggle
Developer's Notes
Source Code
BioTapestry Viewer
Send Feedback
BioTapestry-users Google Group
License and Disclaimer
September 24, 2017: New Version 7.1.1 has been released. See What's New.

Endomesoderm Screenshot

BioTapestry is an interactive tool for building, visualizing, and sharing gene regulatory network models over the web.


The latest version of the BioTapestry Editor is version 7.1.1, released 9/24/17. Download the copy of BioTapestry that is appropriate for your system. For Windows and Linux, you will need to install Java first. It can be downloaded from here (click the "Free Java Download" button) or here if you want to select from a wide variety of versions. BioTapestry actually runs fine on older versions of Java (version 5 or newer). For Mac, to meet current requirements for verified Mac applications, the needed Java runtime (Java 8) is bundled with the app.

If you need to use an older version of BioTapestry prior to Version 7.1.1, you can still download older versions of the program from the Archived Executables page.

  • Windows: (Install Java first) Zip archive: Unzip the file and drag the BioTapestry.exe file out of the archive and drop it on your desktop. Double-clicking on the desktop icon will start the program running. When you try to run it, you will probably receive a warning message that "Windows protected your PC" and that the app is unrecognized. Clicking on the More info link gives you the option to Run Anyway. MD5 checksum: MD5(

  • Mac: (Java bundled with app) Disk image: BioTapestryEditorInstallImage711.dmg. This large (75 MB) file contains a copy of the required Java runtime, and both the disk image and the BioTapestry program itself have been signed. Double-click the downloaded dmg disk image file to mount it, and then open a Finder window for the mounted disk. From the Finder window, drag the BioTapestry Editor icon inside onto your desktop (or, if you prefer, into your Applications folder). If Mac Gatekeeper has been set to restrict to only App Store, will need to launch System Preferences, click on Security & Privacy, and on the General tab set Allow apps downloaded from: App Store and identified developers. If you take this step, you may wish to reset it back to App Store after starting BioTapestry the first time. MD5 checksum: MD5(BioTapestryEditorInstallImage711.dmg)=81f3f28c0dada22ff5d275f1db0e128c.

  • Linux: (Install Java first) Compressed tar file: BioTapestryEditorForLinux711.tgz. Then cd BioTapestryEditor and run the wrapper script You MUST have defined the environment variable JAVA_HOME or have the correct java/bin directory in your PATH. MD5 checksum: MD5(BioTapestryEditorForLinux711.tgz)=332559f680ff94e50706b0077db5d97d.

Getting Started

If you haven't used BioTapestry before, you can get up to speed on the basics by going through the online Quick Start Tutorial.

BioTapestry in Action

Here are some current uses of BioTapestry:

Interactive Web Models from the Davidson Lab

Other Interactive Web Models

Papers and Books Using BioTapestry

Please let us know if you are using BioTapestry for your research!


BioTapestry is designed around the concept of a developmental network model, and is intended to deal with large scale models with consistency and clarity. It is capable of representing systems that exhibit increasing complexity over time, such as the genetic regulatory network controlling endomesoderm development in sea urchin embryos:

Endomesoderm Screenshot

Another system that demonstrates BioTapestry's capabilities for representing systems that exhibit increasing complexity over time is the network for mouse ventral neural tube specification (Vokes, 2007):

Mouse Ventral Neural Tube Screenshot

Users can annotate network elements with the supporting experimental evidence, as is shown here for the T-cell gene regulatory network (Georgescu et. al., 2008):

T-Cell Network with Evidence Screenshot

BioTapestry's auto layout templates and resizable workspace make it a good tool for working with much larger networks, such as this network for Halobacterium salinarum (Bonneau, 2007):

Halobacterium Network

BioTapestry's framework for creating sets of submodels is well-suited for organizing such large networks in an understandable way, as this detail from the above Halobacterium salinarum network demonstrates:

Halobacterium Network Detail

Significant features include:

  • Supporting data resulting from the perturbation of expression of specific genes, measured in any way (QPCR, genetics, etc.), can be easily accessed for each gene or link. Temporal and spatial expression results are also accessible.
  • BioTapestry can portray hourly, localized views of the network during development based on data tables describing the network's local and temporal states.
  • BioTapestry can automatically layout the set of network models from lists of interactions provided either through interactive dialogs or comma-separated value (CSV) files exported by spreadsheet programs.

Running BioTapestry Online Using Java Web Start

As long as your web browser supports Java Web Start, the following link will launch the BioTapestry Editor without having to first download and install it.

Click HERE to run the BioTapestry Editor (version 7.1.1, released 9/24/17, REQUIRES Java 1.5 or above) using Java Web Start.

NOTE: The certificate used to sign the executable is out-of-date, but is otherwise still valid. So to run using the above link, you will need to bring up the Java Control Panel application for your computer and either set your Java security level to "High" (instead of "Very High"), or add to the Exception Site List. Setting the level to "High" involves some general risk, since other sites hosting Java applications with revoked certificates would be allowed to run. It is unlikely that we will upgrade the certificate, since the Java Web Start option is now deprecated. The safest approach is to download the executables from this site.


BioTapestry Frequently Asked Questions

If you have a question about how something works in BioTapestry, consult the online BioTapestry Frequently Asked Questions list (though be advised it has not been updated in quite a while). If you have a question that isn't covered there, then please let us know so we can add it to the list.

Online Tutorials

A series of short tutorials that focus on different aspects of the software are available online. For example, for newcomers, the Quick Start Tutorial covers the minimum material you need to get started working with BioTapestry. There are other tutorials that build upon that introductory material and cover more advanced topics.

Current Online Tutorial List

Quick Start Tutorial: This is the best way to learn the basics for using BioTapestry. It covers the minimum material you need to draw a multi-level hierarchy of network models. If you are a newcomer, this will be the best way to begin.

Quick Start Tutorial Resource File (right-click & use "Save Link As...")
Completed BioTapestry ModelQuickStartModel.btp

(The original Revision A of the Quick Start Tutorial is still available here if you want to learn about how to build networks using the original "top-down" method.)

Dynamic Submodels Tutorial: This tutorial covers how to create dynamic submodels, where data tables are used to automatically determine the active network elements, and the user can manipulate a time slider to see a dynamic presentation of the network behavior. This is the approach used for the S. purpuratus endomesoderm model.

Dynamic Submodels Tutorial Resource File (right-click & use "Save Link As...")
Starting BioTapestry ModelTutorialModelV2.btp
Time Course Data FileTutorialExpressionDataV2.xml
Temporal Input Data FileTutorialInputDataV2.xml
Completed BioTapestry ModelTutorialModelV2-Finished.btp

Tutorial on Building Networks from Interaction Tables: This tutorial covers how to build and layout networks automatically from lists of interactions, which are specified using interactive dialogs. It also covers how to use several tools that can help with common network layout tasks; these are useful even if you are drawing all your networks manually.

Interaction Tables Tutorial Resource File (right-click & use "Save Link As...")
Completed BioTapestry ModelFromDialogTutorial-Finished.btp

Building Networks from Comma-Separated Value Files: This tutorial covers how to build and layout networks automatically using lists of interaction commands that are created in a spreadsheet program such as Microsoft Excel, and then imported into BioTapestry as a comma-separated value (CSV) file.

CSV Tutorial Resource File (right-click & use "Save Link As...")
First-Pass CSV Input FileTutorialSpreadsheetVer2.csv
Second-Pass CSV Input FileTutorialSpreadsheetVer2Pass2.csv
Completed (First-Pass Only) BioTapestry ModelCSVTutorialModel-Finished.btp
Comma-Separated Value (CSV) Input File Format DescriptionCSVGuide.txt

Tutorial on Using and Creating Paths: This tutorial covers the feature of BioTapestry that allows you to define named paths through the model hierarchy. You may have situations where you have a complex model hierarchy, and you want to be able to easily progress through a series of closely related submodels that could be widely dispersed across that hierarchy. Paths allow you to do this.

Paths Tutorial Resource File (right-click & use "Save Link As...")
Starting BioTapestry ModelPathTutorialInitialModel.btp
Completed BioTapestry ModelPathTutorialModel-Finished.btp

What's New

Version 7.1.1 was released on 9/24/17, and is a minor bugfix release. The one significant change is that the version for the Mac is now signed with an Apple Developer Certificate, and also has the Java Runtime embedded in the application; you do not have to download and install Java separately for the Mac.

Version 7.1.0 was released on 9/29/16, and is an interim bugfix release. Some useful new features have been added as well, which are described in detail in the Version 7.1 Release Notes.

One set of new features was designed to help clean up some of the unneeded or duplicated elements that can commonly accumulate in the top-level model after the user builds their models at lower levels in the hierarchy. For example, there can be duplicate links or nodes, or unused elements, and new tools have been added to track down and eliminate these unnecessary elements:

BioTapestry: Merge Links

Version 7.1 has also made it much easier to create, edit, and maintain cis-regulatory element definitions for genes. The modules can now be drawn instead of specified in an obscure table, and an editing dialog replaces the need to change table entries. One of the most significant improvements is that links are now matched with their target modules, and the system will manage links correctly as cis-reg modules are reordered, resized, and shifted.

BioTapestry: Editing Cis-Reg Modules

More in-depth discussion of these new features can be found in the Version 7.1 Release Notes.

Older release notes are also available for Version 7, Version 6, Version 5, Version 4, Version 3, Version 2 and for even older versions.


Please cite BioTapestry using [Longabaugh 2005], [Longabaugh 2009], and/or [Paquette 2016] if you use BioTapestry in your research.

DB Cover Art

Problems Running It?

If you run into any issues with getting BioTapestry to run on your computer that you cannot resolve, or have a program crash, please send a report to biotapestry at systemsbiology dot org or post a message on the BioTapestry-users Google group so we can address your problem. Browsing the Google group is a good way of finding out about any recently identified compatibilty issues and what workarounds have been developed to addess them.

If problems arise due to the version of Java installed on your computer, see the section below to learn about obtaining a supported version of Java. Starting with Version 7.1.1, Java is bundled with the application for the Mac.

If you have previous BioTapestry files that are not loading into the current version correctly, or run into any other show-stopping bugs with the new version, the previous versions (e.g. 7.0.0, 6.0.0) can still be dowloaded from the Archived Executables page.

Supported Platforms

The BioTapestry downloadable executables and Web Start version require a minimum of Java Version 1.5. If you encounter problems with a particular version of Java, please let us know about it; switching to a different version should solve any version-related problems. To run BioTapestry, unless you are on a Mac, you will first need to install the Java Runtime Environment (JRE). The JRE can be downloaded from here (click the "Free Java Download" button) or here if you want to select from a wide variety of versions.

BioTapestry for Gaggle

Beginning with Version 7.1.0, we are no longer providing updates to the Gaggle-enabled BioTapestry Editor. Instructions and the final release Version 7.0.0 Web Start link are provided here.

Developer's Notes

BioTapestry supports user-written plugins for creating a customized experimental data display. There are example plugins in the source code tree (see below) that can serve as a starting point. If you need any guidance on building plugins, feel free to contact us.

BioTapestry can be called in batch mode from within another Java program to generate images from a comma-separated-value specification coming from a provided InputStream. A small example is provided in the source code tree (see below) in the class.

The BioTapestry Viewer can be embedded as a visualization component inside another Java program. An example of how to do this is shown in the class org.systemsbiology.biotapestry.embedded.EmbeddedViewerPanelTestWrapper in the source code.

Source Code

A tar file of the current version of the source code is available here. Starting with Version 7, BioTapestry source code is also being hosted on GitHub. There are separate repositories; one for the Java codebase and another for the new browser-based Viewer Web Application code.

BioTapestry Viewer

BioTapestry has always supported the ability to share interactive, read-only GRN models over the web. Prior to Version 7, the BioTapestry Viewer used Java Web Start to run on the user's computer. We now support a new way of hosting a Viewer embedded in the web browser that does not require the user to have Java installed on their computer. This change requires that the web server hosting the Viewer supports Java Servlets (e.g. Apache Tomcat Version 6). We provide a page with detailed instructions on how to get a Viewer installation up and running. You can also contact us using the resources listed in the Feedback section if you are having problems.

If your deployment is on a publically available web site, please let us know about it. We'd like to link to your viewer page off the BioTapestry home page. Even if you prefer not to be linked to, we appreciate being able to keep track of viewer deployments. Thanks!

Send Feedback

We are eager to receive any feedback you wish to send us, such as questions, bug reports, feature requests, and usability issues. The best place to do this is in the
BioTapestry-users Google group. However, you can also email us privately at:
biotapestry at systemsbiology dot org

BioTapestry-users Google Group

This group is intended to give BioTapestry users a place to discuss the program, get help with questions, ask for program enhancements, provide feedback, and share tips with each other on using the software. The group home page is:


BioTapestry began as a joint project of the Institute for Systems Biology (ISB) and the Davidson Lab at Caltech. The orginal contributors were:
  • William Longabaugh
  • Eric Davidson
  • Hamid Bolouri
Since 2012, all program development is solely based at ISB, under the direction of William Longabaugh. From Autumn 2012 to Spring 2016, the BioTapestry development team at ISB also included:
  • Suzanne Paquette
  • Kalle Leinonen
  • Stephen Ramsey, formerly at the Institute for Systems Biology, helped to write the SBML output and simulation support
  • Dan Tenenbaum, formerly at the Institute for Systems Biology, helped to write the Gaggle 2007-4 support

Windows executable created using the Launch4j Executable Wrapper by Grzegorz Kowal Code is available on Sourceforge.

Mac executable is bundled with the appbundler code provided by Oracle and Infinite Kind. Code is available on BitBucket.

BioTapestry development was previously supported by the National Institute of General Medical Sciences under Award Number R01GM061005, and the Eunice Kennedy Shriver National Institute Of Child Health & Human Development of the National Institutes of Health under Award Number R01HD073113. The content of this web site is solely the responsibility of the authors and does not necessarily represent the official views of the National Institutes of Health.

License and Disclaimer

This software is licensed under the GNU Lesser General Public License (LGPL), which is a standard "free software" and "open source" license. A copy of the license agreement is available online here.

The downloadable Windows executable is wrapped in code that is made available by Grzegorz Kowal under this MIT License.

The downloadable Mac executable is bundled with the appbundler code that is copyright Oracle, and is licensed under the GNU General Public License version 2 with "Classpath" exception. Additional code in that bundle is copyright Infinite Kind, and is also licensed under the GNU General Public License version 2 with "Classpath" exception. The Mac executable includes a copy of the Java 8 Runtime Engine, made available under the Oracle Binary Code License Agreement for the Java SE Platform Products.

BioTapestry is under continual development, and despite our best efforts there are bugs in the software. Please be advised that, as stated in the license agreement, the Institute for Systems Biology and the authors disclaim any liability stemming from the use of this software.

Last updated: September 24, 2017

biotapestry at systemsbiology dot org