Skip to content

Commit

Permalink
update link to repos
Browse files Browse the repository at this point in the history
  • Loading branch information
Remi-Gau committed Dec 12, 2024
1 parent 831c45d commit 1d026b8
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 57 deletions.
2 changes: 1 addition & 1 deletion docs/collaboration/governance.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This document, _Brain Imaging Data Structure (BIDS): Governance and Decision Mak

### A. Project Summary

The Brain Imaging Data Structure (BIDS) is a standard specifying the description of neuroimaging data in a filesystem hierarchy and of the metadata associated with the imaging data. The current edition of the standard is available in [HTML][specification] with all the previous editions available since October 2018 (listed in the [Changelog](https://bids-specification.readthedocs.io/en/stable/CHANGES.html)). The pre-October 2018 specification editions can be found in this [repository](https://github.com/bids-standard/bids-website) as PDFs. The development edition is available in [HTML][specification]. The specification is based in a [GitHub repository][specification_gh] and rendered with [ReadTheDocs](https://docs.readthedocs.io/en/stable/).
The Brain Imaging Data Structure (BIDS) is a standard specifying the description of neuroimaging data in a filesystem hierarchy and of the metadata associated with the imaging data. The current edition of the standard is available in [HTML][specification] with all the previous editions available since October 2018 (listed in the [Changelog](https://bids-specification.readthedocs.io/en/stable/CHANGES.html)). The pre-October 2018 specification editions can be found in this [repository][bids_wesbite_gh] as PDFs. The development edition is available in [HTML][specification]. The specification is based in a [GitHub repository][specification_gh] and rendered with [ReadTheDocs](https://docs.readthedocs.io/en/stable/).

We strive for community consensus in decision making. This governing model and decision making procedure was developed through the review of several governance models across the informatics and computing field.

Expand Down
2 changes: 1 addition & 1 deletion docs/collaboration/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ BIDS is informed, supported, and guided by its users. BIDS standards are intende

- You can contribute to the BIDS specification by opening [Issues](https://github.com/bids-standard/bids-specification/issues) and proposing changes via [Pull Requests](https://github.com/bids-standard/bids-specification/pulls) on [GitHub][specification_gh].

- To make improvements to the website that you are reading right now, you can also open an [Issue](https://github.com/bids-standard/bids-website/issues) and propose changes via Pull Requests at the [BIDS website GitHub repository](https://github.com/bids-standard/bids-website).
- To make improvements to the website that you are reading right now, you can also open an [Issue](https://github.com/bids-standard/bids-website/issues) and propose changes via Pull Requests at the [BIDS website GitHub repository][bids_wesbite_gh].

<u> Become a part of the BIDS Community </u>

Expand Down
2 changes: 1 addition & 1 deletion docs/extensions/general-guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Larger contributions that are expected to involve longer and more involved discu

1. Open an initial “issue” on [the bids specification repository] issues page to gauge interest in your potential BEP, and to collect feedback by more community members and [BIDS maintainers](https://github.com/bids-standard/bids-specification/blob/master/DECISION-MAKING.md#maintainers-group). **This is an important step before proceeding in order to make sure that more consensus arises and more contributors are aware what is happening**.

1. Communicate with the BIDS maintainers to make your BEP official. This entails registering the BEP with a number on the BIDS website. To obtain a number for your BEP, follow the previous steps and then [open a new issue](https://github.com/bids-standard/bids-website/issues) or [submit a pull request](https://github.com/bids-standard/bids-website/pulls) to the [website GitHub repository](https://github.com/bids-standard/bids-website/), cross-linking to any other already existing issues.
1. Communicate with the BIDS maintainers to make your BEP official. This entails registering the BEP with a number on the BIDS website. To obtain a number for your BEP, follow the previous steps and then [open a new issue](https://github.com/bids-standard/bids-website/issues) or [submit a pull request](https://github.com/bids-standard/bids-website/pulls) to the [website GitHub repository][bids_wesbite_gh], cross-linking to any other already existing issues.

1. Create a draft of your extension by discussing among colleagues. The [BIDS Extension Proposal template](https://docs.google.com/document/d/1W7--Mf3gCCb1mVfhsoRJCAKFhmf2umG1PFkyZ1jEgMw/edit#) provides some boilerplate and formatting conventions.

Expand Down
2 changes: 1 addition & 1 deletion docs/extensions/submission.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This process assumes the BEP is ready to be opened as a pull request to the [`bi

1. Preprint of the new extension (if applicable - please refer to the BEP paper writing suggestion below)

1. Press release for the [`bids-website`](https://github.com/bids-standard/bids-website) [news section](../blog/index.md)
1. Press release for the [`bids-website`][bids_wesbite_gh] [news section](../blog/index.md)

## Giving collaborators additional permissions within our `bids-standard` organization

Expand Down
73 changes: 20 additions & 53 deletions docs/faq/bids-apps.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,49 +26,39 @@ This file is automatically populated with tag used to trigger the build on the C

## How can I download a particular version of a BIDS App?

All versions of BIDS Apps are archived on Docker Hub. To access a particular
version you should refer to a specific Docker Hub tag. For example:
All versions of BIDS Apps are archived on Docker Hub. To access a particular version you should refer to a specific Docker Hub tag. For example:

```bash
docker pull bids/example:v0.0.5
```

## What do the analysis levels (`participant` and `group`) mean?

Generally, `participant` means individual level analysis (for instance: single subject).
The `group` level analysis can be thought of as the second step,
where the input becomes the output of the `participant` level analysis.
Generally, `participant` means individual level analysis (for instance: single subject). The `group` level analysis can be thought of as the second step, where the input becomes the output of the `participant` level analysis.

For example, generating statistic maps of each subject's brain could be considered `participant`,
while generating the average of these maps across the dataset could be considered `group`.
For example, generating statistic maps of each subject's brain could be considered `participant`, while generating the average of these maps across the dataset could be considered `group`.

## For developers

### Getting started

#### Is there a BIDS App template?

Have a look at the
[example BIDS App repository](https://github.com/bids-apps/example).
A minimalist example of a BIDS App consisting of a Dockerfile
and a simple entry point script (written in this case in Python)
accepting the standard BIDS Apps command line arguments.
Have a look at the [example BIDS App repository](https://github.com/bids-apps/example). A minimalist example of a BIDS App consisting of a Dockerfile and a simple entry point script (written in this case in Python) accepting the standard BIDS Apps command line arguments.

#### Which container should I use to start building my app?

The only minimum requirements of a BIDS App's container is its ability to run your pipeline.
So for example, if your App is mostly Python based it should be sufficient
to start with any image that has Python and include your environment dependencies.
The only minimum requirements of a BIDS App's container is its ability to run your pipeline. So for example, if your App is mostly Python based it should be sufficient to start with any image that has Python and include your environment dependencies.

### API

#### What should the API of my BIDS App look like?

The obligatory arguments of the API of any BIDS App are:

- `bids_dir`
- `output_dir`
- `analysis_level`
- `bids_dir`
- `output_dir`
- `analysis_level`

with an API call that would look like this:

Expand All @@ -78,38 +68,29 @@ app_name bids_dir output_dir analysis_level

#### What do we do if my application does not have any use for the group level analysis?

If your pipeline has no need for group level analysis,
it is fine if it is only valid for the analysis_level argument
(see [fmriprep](https://fmriprep.readthedocs.io/en/latest/usage.html)).
If your pipeline has no need for group level analysis, it is fine if it is only valid for the analysis_level argument (see [fmriprep](https://fmriprep.readthedocs.io/en/latest/usage.html)).

#### Can I add more arguments to the API of my App?

Every BIDS App must use the mandatory arguments mentioned above,
but you are free to add more that are specific to the task your App will perform.
Every BIDS App must use the mandatory arguments mentioned above, but you are free to add more that are specific to the task your App will perform.

We recommend you follow the guidelines mentioned in the [BIDS apps specification](https://bids-standard.github.io/execution-spec/)
for more information on specifying the API of your App.
We recommend you follow the guidelines mentioned in the [BIDS apps specification](https://bids-standard.github.io/execution-spec/) for more information on specifying the API of your App.

### Testing

#### Where can I can get data to test my app?

For both lightweight and full datasets to test your BIDS App, you can choose
from one of these
[example datasets](../datasets/index.md)
For both lightweight and full datasets to test your BIDS App, you can choose from one of these [example datasets](../datasets/index.md)

#### Is it mandatory to first check the dataset validity using the BIDS-validator?

It is an extremely helpful feature to have validation of the dataset as part of your tool.
However, it's not considered mandatory.
For instance: many Apps will simply fail with an error message if the dataset is not BIDS compliant.
It is an extremely helpful feature to have validation of the dataset as part of your tool. However, it's not considered mandatory. For instance: many Apps will simply fail with an error message if the dataset is not BIDS compliant.

### Version

#### How should I version my BIDS App?

Since most BIDS Apps are just thin wrappers around existing pipelines it would
be most sensible to use the same version as the software they are wrapping.
Since most BIDS Apps are just thin wrappers around existing pipelines it would be most sensible to use the same version as the software they are wrapping.

For example in case of HCP Pipelines this would be `v3.17.0`.

Expand All @@ -122,16 +103,11 @@ git push

#### I want to release a new version of a BIDS App, but the pipeline version is the same?

This can happen when only the runscript or the Dockerfile changed?
According to semantic versioning we should use the `+` signed followed by the build number.
Unfortunately Docker Hub does not support semantic versioning.
The best option is to use the `-` sign followed by the build number.
For example `v3.17.0-3`.
This can happen when only the runscript or the Dockerfile changed? According to semantic versioning we should use the `+` signed followed by the build number. Unfortunately Docker Hub does not support semantic versioning. The best option is to use the `-` sign followed by the build number. For example `v3.17.0-3`.

#### Where should I describe changes between versions?

After tagging a new release it is important to provide a list of changes
on the GitHub Releases page.
After tagging a new release it is important to provide a list of changes on the GitHub Releases page.

It accepts markdown syntax and allows you to explain in detail what has changed.

Expand All @@ -141,21 +117,12 @@ Here's an [example](https://github.com/bids-apps/example/releases).

#### How do I upload my BIDS App to the BIDS App Github org?

You can release BIDS Apps using your own or your lab's account.
However, if you want to be added to the BIDS docker hub,
please message the [BIDS maintainers](mailto:[email protected])
to have a repo created for you.
You can release BIDS Apps using your own or your lab's account. However, if you want to be added to the BIDS docker hub, please message the [BIDS maintainers](mailto:[email protected]) to have a repo created for you.

If you base your code on <https://github.com/bids-apps/example> deployment
on docker hub will happen automatically via Circle-ci.
If you base your code on <https://github.com/bids-apps/example> deployment on docker hub will happen automatically via Circle-ci.

If you want your App to show on the [BIDS website](../tools/bids-apps.md),
you will have to update the `data/tools/apps.yml` in the
[BIDS website repository](https://github.com/bids-standard/bids-website).
If you want your App to show on the [BIDS website](../tools/bids-apps.md), you will have to update the `data/tools/apps.yml` in the [BIDS website repository][bids_wesbite_gh].

#### When is a new image deposited to Docker Hub?

Even though Docker image is being build on the CI server each time
you push a commit to the repository it is not automatically being pushed to Docker Hub.
Only if you tag a commit, push the tag to GitHub,
and the tests you configured pass a new image will be deposited in Docker Hub.
Even though Docker image is being build on the CI server each time you push a commit to the repository it is not automatically being pushed to Docker Hub. Only if you tag a commit, push the tag to GitHub, and the tests you configured pass a new image will be deposited in Docker Hub.

0 comments on commit 1d026b8

Please sign in to comment.