Open science starts with you

Don't just use science.Help build it.

Contribute to open-source bioinformatics, develop reproducible workflows, improve scientific resources and collaborate with people who share an interest in computational biology.

⌘ Open-source⌬ Reproducible science✳ Collaborative development

Your contribution journey

A collaborative development workflow

OPEN SOURCE
⌕

Explore a project

Find a workflow or research resource

01
⌘

Fork & develop

Work on your own branch

02
✓

Test & document

Check your changes and results

03
↗

Submit a pull request

Share your contribution

04

Everyone can contribute

Great scientific tools are built together.

Open-source scientific development depends on more than programming. Researchers provide biological insight, developers build tools, students bring fresh perspectives and contributors help make scientific resources more accessible.

Whether you are writing your first documentation page or developing a complex analysis workflow, there are meaningful ways to participate.

Ways to contribute

Find where your skills make a difference.

Explore different contribution areas. You can start with what you already know and gradually develop new skills.

⌘
01

Workflow development

Build bioinformatics pipelines

Develop, optimise and maintain reproducible workflows for genomic, transcriptomic and other biological data.

NextflowSnakemakePythonR
IntermediateGet involved →
⌬
02

Scientific research

Contribute to research projects

Explore biological datasets, develop computational methods and investigate questions across biomedical research.

GenomicsRNA-seqAMRStatistics
▤
03

Documentation

Improve scientific documentation

Write practical guides, explain methods, improve installation instructions and make workflows easier to understand.

MarkdownTechnical writingBioinformatics
Beginner friendlyGet involved →
✓
04

Testing & validation

Test and validate workflows

Run workflows with suitable test data, identify bugs, report unexpected results and improve reliability.

Quality controlTestingLinuxGit
✳
05

Education

Create learning resources

Develop tutorials, practical exercises and learning material for people entering computational biology.

TeachingRPythonScientific communication
Beginner friendlyGet involved →
◈
06

Community & design

Improve the Bioxflow experience

Help improve website usability, scientific visualisation, accessibility and the overall community experience.

Web developmentUI/UXAccessibility

Showing all 6 contribution areas.

Getting started with GitHub

From your computer to the community.

The following is a typical open-source workflow. Explore each step to understand how contributions move from an idea to a proposed improvement.

Contribution walkthroughSTEP 01 / 05

Fork a repository

Visit a GitHub repository and create a fork. This gives you your own copy where you can safely make changes without modifying the original project.

Example command

# Fork the repository using GitHub's Fork button
Select a step to explore

Contribution guidelines

Good contributions make good science.

We aim to make contributions transparent, understandable and maintainable. These principles provide a starting point for participating in Bioxflow projects.

01

Start with an issue

Before making substantial changes, discuss your idea or report a bug so that the work can be coordinated.

02

Create a focused branch

Keep each contribution focused on one feature, fix or improvement. Use a descriptive branch name.

03

Document your changes

Explain what you changed, why it matters and how someone else can reproduce or test it.

04

Submit a pull request

Describe your changes clearly and include relevant test results, screenshots or example outputs.

Built for reproducibility

Every improvement can make research better.

Bioinformatics workflows need clear inputs, defined software environments, documented parameters and reliable outputs. Contributors can help improve each of these components.

Explore pipeline concepts →
example_workflow.nf
nextflow.enable.dsl = 2

params.input = 'data/*.fastq.gz'

// Example workflow structure

process FASTQC {

    input:
    path reads

    output:
    path '*_fastqc.html'

    script:
    """
    fastqc ${reads}
    """
}

workflow {

    reads = Channel.fromPath(params.input)

    FASTQC(reads)
}

Illustrative Nextflow code — not a validated production workflow.

⌘

Build with Bioxflow

Your next contribution could help someone discover something new.

Have an idea, a scientific question or a useful skill to share? We would love to hear from you.