Creating Interactive Galaxy Tours

Overview
Questions:
  • What is a Interactive Galaxy Tour?

  • How can we create an Interactive Tour?

Objectives:
  • Creating a Galaxy tour from scratch

  • Deploying and running a tour

Time estimation: 15 minutes
Supporting Materials:
Last modification: Oct 20, 2022
License: Tutorial Content is licensed under Creative Commons Attribution 4.0 International License The GTN Framework is licensed under MIT

Introduction

Galaxy is a great solution to train the bioinformatics concepts:

  • numerous bioinformatics tools are available (almost 5,000 in the ToolShed)
  • it can be used by people without any computer science skills
  • it trains to use technology, outlining available resources and efforts that have made them accessible to researchers
  • it is scalable

In 2016, the Galaxy Training Network decide to set up a new infrastructure for delivering easily Galaxy related training material. The idea was to develop something open and online based on a community effort, as most of the time in Galaxy.

We take inspiration from Software Carpentry. We collected everything on a GitHub repository: https://github.com/galaxyproject/training-material . We decided a structure based on tutorials with hands-on, fitting both for online self-training but also for workshops, grouped in topics. Each tutorial follows the same structure and comes with a technical support to be able to run.

In this tutorial, you will understand how to design and develop a new tutorial fitting in this training material repository. As doing helps to understand, we will develop a small tutorial to explain BLAST with the full infrastructure to be able to run this tutorial anywhere.

Agenda

In this tutorial, we will deal with:

  1. Introduction
  2. A Galaxy Interactive Tour
  3. Creating a Galaxy Interactive Tour
  4. Conclusion

A Galaxy Interactive Tour

A Galaxy Interactive Tour is a way to go through an entire analysis, step by step inside Galaxy in an interactive and explorative way. It is a great pedagogic way to run the tutorial directly inside Galaxy.

Demonstration of an Interactive Tour.
Figure 1: Demonstration of an Interactive Tour

A tour is a YAML file like:

id: galaxy_ui
name: Galaxy UI
description: A gentle introduction to the Galaxy User Interface
title_default: "Welcome to Galaxy"

steps:
    - title: "Welcome to Galaxy"
      content: "This short tour will guide you through Galaxy's user interface.<br>
                You can navigate with your arrow keys and leave the tour at any time point
                with 'Escape' or the 'End tour' button."
      backdrop: true

    - title: "Upload your data"
      element: ".upload-button"
      intro: "Galaxy supports many ways to get in your data.<br>
              Use this button to upload your data."
      position: "right"
      postclick:
        - ".upload-button"
  • at the top some metadata related to the Tour:
    • id: ID of the tour
    • name: name of the tour
    • description: a short description of the tour
    • title_default: a title
  • several steps corresponding to the different boxes

    Each step is beginning with a dash - and with possible arguments

    Argument Description
    title Header of each step-container
    content Text that is shown to the user
    element JQuery Selector of the element you want to describe / click
    placement Placement of the text box relative to the selected element
    preclick or postclick Elements that receive a click() event before (preclick) or after (postclick) the step is shown
    textinsert Text to insert if element is a text box (e.g. tool search or upload)
    backdrop true/false: Show a dark backdrop behind the popover and its element, highlighting the current step

    Full reference of the properties

The YAML file of a tour can be integrated in a Galaxy instance by placing the YAML file in the config/plugins/tours directory of the Galaxy code and restarting the Galaxy instance

Creating a Galaxy Interactive Tour

A Web browser plugin is available to help the creation and the test (on the fly) of an interactive tour.

Galaxy Tour Builder by TailorDev
Hands-on: Install and start the plugin
  1. Install the plugin using the app store of your web-browser:
  2. Load the webpage of any Galaxy instance
  3. Start the plugin by clicking on the icon with Galaxy icon close to the address bar

We can now create easily a Galaxy Interactive Tour and test it on the fly.

Hands-on: Create a Galaxy Interactive Tour
  1. Create a Galaxy Interactive Tour for “BLAST” tutorial
  2. Test it with the plugin
  3. Copy the YAML content and add it to a file
  4. Add the file to the tours directory of the tutorial
  5. Test it on a local Galaxy instance

Conclusion

Key points
  • The Interactive Tours are a good training object for self-learning at its own speed

  • It is now easy to create an Interactive Tour and test it

Frequently Asked Questions

Have questions about this tutorial? Check out the tutorial FAQ page or the FAQ page for the Contributing to the Galaxy Training Material topic to see if your question is listed there. If not, please ask your question on the GTN Gitter Channel or the Galaxy Help Forum

Feedback

Did you use this material as an instructor? Feel free to give us feedback on how it went.
Did you use this material as a learner or student? Click the form below to leave feedback.

Click here to load Google feedback frame

Citing this Tutorial

  1. Bérénice Batut, Björn Grüning, Saskia Hiltemann, Creating Interactive Galaxy Tours (Galaxy Training Materials). https://training.galaxyproject.org/training-material/topics/contributing/tutorials/create-new-tutorial-tours/tutorial.html Online; accessed TODAY
  2. Batut et al., 2018 Community-Driven Data Analysis Training for Biology Cell Systems 10.1016/j.cels.2018.05.012



@misc{contributing-create-new-tutorial-tours,
author = "Bérénice Batut and Björn Grüning and Saskia Hiltemann",
title = "Creating Interactive Galaxy Tours (Galaxy Training Materials)",
year = "",
month = "",
day = ""
url = "\url{https://training.galaxyproject.org/training-material/topics/contributing/tutorials/create-new-tutorial-tours/tutorial.html}",
note = "[Online; accessed TODAY]"
}
@article{Hiltemann_2023,
	doi = {10.1371/journal.pcbi.1010752},
	url = {https://doi.org/10.1371%2Fjournal.pcbi.1010752},
	year = 2023,
	month = {jan},
	publisher = {Public Library of Science ({PLoS})},
	volume = {19},
	number = {1},
	pages = {e1010752},
	author = {Saskia Hiltemann and Helena Rasche and Simon Gladman and Hans-Rudolf Hotz and Delphine Larivi{\`{e}}re and Daniel Blankenberg and Pratik D. Jagtap and Thomas Wollmann and Anthony Bretaudeau and Nadia Gou{\'{e}} and Timothy J. Griffin and Coline Royaux and Yvan Le Bras and Subina Mehta and Anna Syme and Frederik Coppens and Bert Droesbeke and Nicola Soranzo and Wendi Bacon and Fotis Psomopoulos and Crist{\'{o}}bal Gallardo-Alba and John Davis and Melanie Christine Föll and Matthias Fahrner and Maria A. Doyle and Beatriz Serrano-Solano and Anne Claire Fouilloux and Peter van Heusden and Wolfgang Maier and Dave Clements and Florian Heyl and Björn Grüning and B{\'{e}}r{\'{e}}nice Batut and},
	editor = {Francis Ouellette},
	title = {Galaxy Training: A powerful framework for teaching!},
	journal = {PLoS Comput Biol} Computational Biology}
}

                   

Congratulations on successfully completing this tutorial!
Developing GTN training material
This tutorial is part of a series to develop GTN training material, feel free to also look at:
  1. Creating a new tutorial
  2. Contributing with GitHub via command-line
  3. Overview of the Galaxy Training Material
  4. Creating Slides
  5. Creating content in Markdown
  6. Adding Quizzes to your Tutorial
  7. Principles of learning and how they apply to training and teaching
  8. Design and plan session, course, materials
  9. Including a new topic
  10. Contributing with GitHub via its interface
  11. Teaching Python
  12. Creating Interactive Galaxy Tours
  13. Updating diffs in admin training
  14. GTN Metadata
  15. Tools, Data, and Workflows for tutorials
  16. Running the GTN website online using GitPod
  17. Running the GTN website locally
  18. Adding auto-generated video to your slides
  19. Generating PDF artefacts of the website