Skip to content

Creation of a learning pathway for the creation of a sig and codex #6128

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 52 commits into
base: main
Choose a base branch
from

Conversation

scorreard
Copy link
Contributor

@scorreard scorreard commented May 28, 2025

The codex training was limited, in order to better guide communities, we created a learning pathway.

Parts of the tuto (include the workflow and tuto tables in the community page) will have to be updated after the All Hands

Copy link
Member

@bebatut bebatut left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing! Thanks a lot @scorreard!!!
I put some comments. My main one would be to remove the community-codex tutorial so now as I am not sure it works how it is

> 4. Select **Create a new file**
> 5. Fill in the `Name of your file` field with: name of your community + `/metadata/`
> This will create a folder for your community and a new folder for your community called metadata.
> 6. Click on **Commit changes**
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Committing a folder without files in it does not work I think.
One idea: Put the hands-on part until there as a FAQ and add a step "Add your community to the Galaxy CoDex" as a first step for tools, workflows, tutorials.
I would then remove this tutorial.

What do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I moved the hands on part in each tutorial (tools, workflow and tutorials) as the file to create is different each time (and as you said, it's not possible to just create a empty folder). What do you think?
I added a FAQ about "What is a codex" which was the hands-off part of this tutorial

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like we should add a section about reviewing the tools in tool_status.tsv file after. Do you think you could add it?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you talking about tools or tutorials?

scorreard added 23 commits May 28, 2025 17:07
Once the learning pathway is online, we should include a link to it in this FAQ
updating text nox that I better understand CoDex, labs and SIGs
Added the flowchart
…_flowcharts.png to topics/community/tutorials/community-tutorial-table/images/codex_tuto_flowcharts.png
…flows_flowchart.png to topics/community/tutorials/community-workflow-table/images/codex_workflows_flowchart.png
@scorreard
Copy link
Contributor Author

The linting is failing because of files that were not modified in this PR
Should I open another PR to solve them?

@scorreard
Copy link
Contributor Author

@matuskalas or @BirdmanRidesAgain, as potential users of this learning pathway, could you review it to highlight anything that is unclear?

Copy link

@BirdmanRidesAgain BirdmanRidesAgain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I present these comments as a naive viewer of the Galaxy-codex documentation.

This is also my first time submitting a code review - apologies for any formatting issues or community guidelines I may have inadvertently broken.

Comment on lines +2 to +6
layout: learning-pathway

title: Creation of a Community CoDex and lab (and optionnally of a Special Interest Group (SIG))
description: |
**What are Galaxy CoDex, lab and SIG?**

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The table doesn't seem to be showing up in Git Preview, making the title extremely long and the content difficult to understand. However, I suspect that's just a function of how I'm viewing the document; if you know better, then ignore this comment.

title: Creation of a Community CoDex and lab (and optionnally of a Special Interest Group (SIG))
description: |
**What are Galaxy CoDex, lab and SIG?**
The Galaxy Communities Dock or **Galaxy CoDex** is a centralized repository that ensures the versioning and documentation of the community components (Batut et al., 2024; NASR et al., 2025).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm unsure what the best-practices/accepted practice for Galaxy's documentation is, but I feel like references could be handled a little better, as per this reference.

IE, give a link if it's a stable research paper, or have a box pointing to 'references'. Since these are bioRxiv links, I'd opt for the latter. I don't mind opening a PR to do so, if you want - it just makes the information easier to access.

The codex is composed of
- A GitHub repository specific to each community with curated lists of tools, workflows and tutorials relevant to the community.
For example : [The curated resources (tools, workflows, tutorials) for the microgalaxy codex](https://github.com/galaxyproject/galaxy_codex/tree/main/communities/microgalaxy/resources).
- The **Community lab**, a centralised webpage that enables communities to rapidly aggregate, curate, integrate, display, and launch relevant tools, workflows, and training on different Galaxy servers. This user-friendly interfaces, built on the Galaxy framework, provides community members with data analysis capacity without requiring programming expertise. Users can run individual tools or create complex workflows, with full provenance tracking to ensure reproducibility, designed specifically for the community research (NASR et al., 2025).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reference, again.

Comment on lines +17 to +19
*References:*
Bérénice Batut, Wendi Bacon, Paul Zierep, Matthias Bernt, Nicola Soranzo, et al.. Galaxy CoDex for finding tools, workflows, and training. GCC 2024 - Galaxy Community Conference, Jun 2024, Brno, Czech Republic. ⟨10.7490/f1000research.1119764.1⟩. ⟨hal-04644966⟩
Nasr E, Amato P, Bernt M, et al. The Microbiology Galaxy Lab: A community-driven gateway to tools, workflows, and training for reproducible and FAIR analysis of microbial data. Preprint. bioRxiv. 2025;2024.12.23.629682. Published 2025 Mar 26. doi:10.1101/2024.12.23.629682

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like this block should go at the bottom, under a subheading or something. It's confusing stuck in here.

Comment on lines +23 to +24
- Module 1 : The creation of a community CoDex (including the lab interface). Generation of the CoDex includes the generation of three tables : A tool table, a tutorial table and a workflow table.
- Module 2: Creation a Special Interest Group (SIG) page (optional).

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there relevant documentation/instruction or a link to find these modules? From this material, I can't really create a sample SIG or CoDex - I know what they are on a high level, but not their structure or formatting.

Comment on lines 60 to +79
# Add your community to the Galaxy CoDex

You first need to make sure that your Community is in the [Galaxy CoDex](https://github.com/galaxyproject/galaxy_codex/tree/main/communities), a central resource for Galaxy communities.
You first need to check if your Community is in the [Galaxy CoDex](https://github.com/galaxyproject/galaxy_codex/tree/main/communities), a central resource for Galaxy communities.
If the community is already there, you can move to the next step of this tutorial.

{% snippet topics/community/faqs/codex.md %}
If you community is not already included, follow this step :
> <hands-on-title>Add your community to the Galaxy CoDex</hands-on-title>
>
> You need to create a new folder in the data/community folder within Galaxy CoDex code source.
> 1. If not already done, fork the [Galaxy Codex repository](https://github.com/galaxyproject/galaxy_codex)
> 2. Go to the `communities` folder
> 3. Click on **Add file** in the drop-down menu at the top
> 4. Select **Create a new file**
> 5. Fill in the `Name of your file` field with: name of your community + `/metadata/categories`
> This will create a folder for your community, a new folder for your community called metadata and a file called categories.
> 6. Click on **Commit changes**
> 7. Fill in the commit message with something like `Add X community`
> 8. Click on `Create a new branch for this commit and start a pull request`
> 9. Create the pull request by following the instructions
>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This block of code is present at least twice in this set of tutorials - once in topics/community/tutorials/community-tool-table/tutorial.md, and once in topics/community/tutorials/community-workflow-table/tutorial.md.

It would be helpful to extract it as a subtutorial and link to it as necessary.


Similarly to the numerous tools available on Galaxy, the [Galaxy Training Network](https://training.galaxyproject.org/) includes numerous tutorials. This tutorail will take you through the steps to generate resources listing all the relevant tutorials and display the tutorial table on your community codex page.

The pipeline creates table with all the tutorials. This table can be **filtered to only include tutorials that are relevant to a specific research community**.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The pipeline creates table with all the tutorials. This table can be **filtered to only include tutorials that are relevant to a specific research community**.
The pipeline creates a table with all the tutorials. This table can be **filtered to only include tutorials that are relevant to a specific research community**.


The pipeline creates table with all the tutorials. This table can be **filtered to only include tutorials that are relevant to a specific research community**.

The generated community-specific table can be used as it and/or embedded, e.g. into the respective Galaxy Hub page or Galaxy subdomain.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As in topics/community/tutorials/community-tool-table/tutorial.md above, I am unsure what 'it' in "community-specific table can be used as it " refers to.

> You can also create a tag (for example, your community name) and tag all relevant tutorials with it. Then, you only need to use this tag to pull all the relevant tutorials.
{: .comment}

# Add the list releavant tags for your community in the tutorial_tags file

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Add the list releavant tags for your community in the tutorial_tags file
# Add the list relevant tags for your community in the `tutorial_tags` file

Comment on lines +87 to +96
> <hands-on-title>Add the relevant tags to the tutorial_tags file</hands-on-title>
> 1. Open or create a file named `tutorial_tags` in your comunity metadata folder (`communities/<your community>/metadata/tutorial_tags`)
> 2. Add the name of the tags relevant to your community in the `tutorial_tags` file, with 1 tag per row
>
> For example:
> ```
> Assembly
> Metagenomics
> ```
{: .hands_on}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As above in topics/community/tutorials/community-tool-table/tutorial.md, it is useful to know what tags these are. ToolShed tags?

The format example is good, but the user is unsure where to find the valid tags.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants