diff --git a/.github/ISSUE_TEMPLATE/bids_apps_submission.yml b/.github/ISSUE_TEMPLATE/bids_apps_submission.yml deleted file mode 100644 index 0d9dc30..0000000 --- a/.github/ISSUE_TEMPLATE/bids_apps_submission.yml +++ /dev/null @@ -1,70 +0,0 @@ ---- -name: BIDS app submission - -# See the json schema to help you create / update this form -# https://json.schemastore.org/github-issue-forms.json - -description: Add your BIDS app to this website - -body: - -- type: markdown - attributes: - value: | - - Have you checked our [contributing guide](https://github.com/bids-apps/bids-apps.github.io/blob/master/CONTRIBUTING.md)? - It's a helpful resource. - - - Have you checked our [FAQ](https://bids-apps.neuroimaging.io/dev_faq/)? - -- type: textarea - attributes: - label: Your BIDS app - description: | - Make sure you provide: - - the github username and repository of your app - - the dockerhub username and repository of your app - - specify if your app uses another CI provider than circlec-ci - - if you use github action specify the workflow name and branch - - specify if your app takes BIDS raw or/and derivatives as inputs - - specify what datatype your app takes as input (anat, func, eeg...) - - More details here: - - https://github.com/bids-apps/bids-apps.github.io/blob/761bcd927ddce83e80e9f898dce1864d9bcb9b04/_config.yml#L64 - - For example: - - - gh: "MICA-MNI/micapipe" - dh: "micalab/micapipe" - ci: "gh" - branch: "main" - workflow: "test" - ds_type: - - raw - datatype: - - func - - value: | - - gh: "github_usename/github_repo_name" - dh: "dockerhub_usename/dockerhub_repo_name" - branch: "main" - ds_type: - - raw - datatype: - - func - -- type: checkboxes - attributes: - label: Submission checklist - description: | - Make sure that your BIDS app fulfills the following requirements: - options: - - label: complies to the BIDS app API - - label: has a system-test workflow set up - - label: test dataset is validated before processing - -# TODO -# - add extra fields /requirements for the BIDS app: -# - outputs bids friendly derivatives (filenames follow the entity-label format) -# - system test on an openneuro dataset -# - has a boutique config diff --git a/.github/ISSUE_TEMPLATE/blank.md b/.github/ISSUE_TEMPLATE/blank.md deleted file mode 100644 index 929d0f1..0000000 --- a/.github/ISSUE_TEMPLATE/blank.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -name: Blank issue -about: Create an issue without a template. -title: '' -labels: '' -assignees: '' ---- diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml deleted file mode 100644 index 5f09c88..0000000 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ /dev/null @@ -1,30 +0,0 @@ ---- -name: Bug report - -# See the json schema to help you create / update this form -# https://json.schemastore.org/github-issue-forms.json - -description: Create a report to help us improve - -title: '[BUG] ' - -labels: [bug] - -body: - -- type: markdown - attributes: - value: | - Please use the [NeuroStars forum](https://neurostars.org/) to ask (and answer) - concrete technical questions or about implementation details around BIDS. - - Please use the [BIDS mailing list](https://groups.google.com/forum/#!forum/bids-discussion), - for announcements, and to draw attention to any item related to BIDS - -- type: textarea - attributes: - label: Describe your problem in detail. - -- type: textarea - attributes: - label: Describe what you expected. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml deleted file mode 100644 index e0753ee..0000000 --- a/.github/ISSUE_TEMPLATE/config.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -blank_issues_enabled: false -contact_links: -- name: BIDS NeuroStars forum - url: https://neurostars.org/ - about: Ask (and answer) concrete technical questions or about implementation details around BIDS. -- name: BIDS mailing list - url: https://groups.google.com/forum/#!forum/bids-discussion - about: Use the BIDS mailing list for announcements, and to draw attention to any item related to BIDS diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml deleted file mode 100644 index 0724665..0000000 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -name: Feature request - -# See the json schema to help you create / update this form -# https://json.schemastore.org/github-issue-forms.json - -description: Suggest an idea for this website - -body: - -- type: markdown - attributes: - value: | - - Have you checked our [contributing guide](https://github.com/bids-apps/bids-apps.github.io/blob/master/CONTRIBUTING.md)? - It's a helpful resource. - -- type: textarea - attributes: - label: Your idea - description: When you suggest your idea, please try to supply (mock) examples! diff --git a/.github/workflows/ruby_tests.yml b/.github/workflows/ruby_tests.yml deleted file mode 100644 index 1562c20..0000000 --- a/.github/workflows/ruby_tests.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- -# runs 'bundle install' and caches installed gems automatically -name: Ruby Tests - -on: - push: - branches: [master] - pull_request: - branches: ['**'] - create: - branches: [master] - tags: ['**'] - schedule: - - cron: 0 4 * * 1 - -concurrency: - group: ${{ github.ref }} - cancel-in-progress: true - -jobs: - test: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Set up Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: 2.6 - bundler-cache: true - - - name: Test build - run: bundle exec jekyll build diff --git a/.github/workflows/update_dashboard.yml b/.github/workflows/update_dashboard.yml deleted file mode 100644 index d7d4b33..0000000 --- a/.github/workflows/update_dashboard.yml +++ /dev/null @@ -1,38 +0,0 @@ ---- -name: update dashboard - -on: - push: - branches: - - master - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - update_dashboard: - runs-on: ubuntu-latest - if: github.repository == 'bids-apps/bids-apps.github.io' - steps: - - uses: actions/checkout@v3 - - - uses: actions/setup-python@v4 - with: - python-version: '3.11' - - - name: Install - run: | - python -m pip install --upgrade pip - pip install -r tools/requirements.txt - - - name: Update readme - run: python tools/create_dahsboard.py - - - uses: peter-evans/create-pull-request@v5 - with: - commit-message: update dashboard - assignees: Remi-Gau - base: master - delete-branch: true - title: '[BOT] update dashboard' diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml deleted file mode 100644 index 4c10ab9..0000000 --- a/.pre-commit-config.yaml +++ /dev/null @@ -1,36 +0,0 @@ ---- -# See https://pre-commit.com for more information -# See https://pre-commit.com/hooks.html for more hooks -repos: -# - repo: https://github.com/Lucas-C/pre-commit-hooks-java -# rev: "1.3.10" -# hooks: -# - id: validate-html - -# - repo: https://github.com/pre-commit/mirrors-prettier -# rev: "v2.6.0" # Use the sha / tag you want to point at -# hooks: -# - id: prettier - -- repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.6.0 - hooks: - - id: trailing-whitespace - - id: end-of-file-fixer - - id: check-yaml - - id: check-json - - id: check-ast - - id: check-added-large-files - - id: check-case-conflict - # - id: pretty-format-json - -- repo: https://github.com/jumanjihouse/pre-commit-hook-yamlfmt - rev: 0.2.3 - hooks: - - id: yamlfmt - args: [--mapping, '4', --sequence, '4', --offset, '0'] - -- repo: https://github.com/psf/black-pre-commit-mirror - rev: 24.8.0 - hooks: - - id: black diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 9d9bb90..0000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,259 +0,0 @@ -# Contributing to BIDS Apps - -- [Contributing to BIDS Apps](#contributing-to-bids-apps) - - [Repository map](#repository-map) - - [:technologist: You can contribute to BIDS-Apps by:](#technologist-you-can-contribute-to-bids-apps-by) - - [Report a valid issue :heavy_check_mark:](#report-a-valid-issue-heavy_check_mark) - - [Labels :label:](#labels-label) - - [Making a change with a pull request :zap:](#making-a-change-with-a-pull-request-zap) - - [Fork the project, clone your fork, and add the BIDS Apps remote:](#fork-the-project-clone-your-fork-and-add-the-bids-apps-remote) - - [Get the latest changes from upstream:](#get-the-latest-changes-from-upstream) - - [Create a new branch from the main master branch to contain your changes:](#create-a-new-branch-from-the-main-master-branch-to-contain-your-changes) - - [Add and Commit your changes](#add-and-commit-your-changes) - - [Build the website locally](#build-the-website-locally) - - [Open a Pull Request with a clear title and description against the master branch.](#open-a-pull-request-with-a-clear-title-and-description-against-the-master-branch) - - [Example Pull Request](#example-pull-request) - - [Recognizing Contributions 🗒️](#recognizing-contributions-️) - - [Get in touch with us :mailbox_with_mail:](#get-in-touch-with-us-mailbox_with_mail) - - [A Special Note :high_brightness:](#a-special-note-high_brightness) - -Welcome to the BIDS Apps repository! :rocket: - -We're excited that you're here and equally thrilled to know that you want to -contribute. :superhero: - -BIDS-Apps are a collection of containerized neuroimaging workflows and pipelines -that accept datasets organized according to the Brain Imaging Data Structure -(BIDS). To learn more please visit our -[Homepage](https://bids-apps.neuroimaging.io) - -These guidelines are designed especially to make the whole process as easy and -smooth as possible. Still, if something is unclear or not mentioned please don't -hesitate to ask. [Email us](mailto:bids.maintenance@gmail.com) or let us know by opening an -[issue!](https://github.com/bids-apps/bids-apps.github.io/issues) - -Before you start you'll need to set up a free [GitHub](https://github.com/) -account and sign in. Here are some -[instructions](https://help.github.com/en/github/getting-started-with-github/signing-up-for-github). - -Not Familiar with Git? Invest a few minutes on this -[Git Tutorial](https://git-scm.com/docs/gittutorial) :octocat: - -## Repository map - -To help you find what is where. - -```bash -. -├── _includes # defines layout for typical page sections -├── _layouts # defines layout for typical page -├── _posts # not currently used -├── css -├── fonts -├── js -├── images -├── _config.yml # the 'control room' for the website -├── index.html # landing page -├── about.md # page see navigation section in _config.yml -├── apps.md # page see navigation section in _config.yml -├── dev_faq.md # page see navigation section in _config.yml -├── tutorial.md # page see navigation section in _config.yml -├── CNAME -├── README.md -├── CONTRIBUTING.md -├── LICENSE -├── feed.xml -├── Gemfile -├── sitemap.xml -├── categories.md -└── tags.md -``` - -To add a page: - -1. add a markdown document in the root directory with this YML frontmatter (see - the [tutorials](./tutorial.md) for an example.) - -```yml ---- -layout: post -title: your title goes here ---- -``` - -1. List it in the `navigation` section of the [\_config.yml](./_config.yml) - file. - -## :technologist: You can contribute to BIDS-Apps by: - -- Reporting a valid - [issue](https://github.com/bids-apps/bids-apps.github.io/issues) -- Helping us in closing an existing - [issue](https://github.com/bids-apps/bids-apps.github.io/issues) -- Opening a - [Pull Request](https://github.com/bids-apps/bids-apps.github.io/pulls) -- Want to discuss something else: [Email us](mailto:bids.maintenance@gmail.com) - -## Report a valid issue :heavy_check_mark: - -BIDS-Apps uses -[GitHub's issue tracker](https://github.com/bids-apps/bids-apps.github.io/issues). -All bugs and enhancements should be listed so that we don't lose track of them, -can prioritize and assign them to the relevant developer or maintainer. - -Consider the following recommended best practice for writing issues, which are -(Recommended but not limited to): - -1. More detailed description rather than one-liners -2. Screenshots -3. Providing example files and error logs -4. How to reproduce it -5. Details of your local system or environment that you're using - -## Labels :label: - -Labels let us identify different types of issues, pull requests and helps in -categorizing them based on their characteristics. Please take a look at the -different types of labels we use. - -- ![Bug](https://img.shields.io/badge/-Bug-%23ee0701) _These issues points to - the problems causing the project to crash, producing an invalid output or - causing an error._ If you find a bug, feel free to open an issue with the - detailed description, screenshots and how to reproduce it. If you experience a - bug that is already listed in the issues, do comment down your remark and wait - till our developers get back to you. - -- ![Duplicate](https://img.shields.io/badge/-duplicate-%237E7E7E) _It indicates - similar/existing issues or pull requests._ Do check the existing issues and - pull request before creating a new one to avoid duplication. If you find a - duplicate issue or PR, please give the reference in the comments. - -- ![Enhancement](https://img.shields.io/badge/-enhancement-%232e5783) _It - indicates a new feature request or enhancement._ Any change or upgrade that - increases the project capabilities, performance or scalability. In general, - enhancements include: - Additional functionality - Error/bug repair and - handling - Better code coverage - Improved performance - -- ![Help Wanted](https://img.shields.io/badge/-help%20wanted-%23128a0c) - _Indicates that a maintainer or developer wants help on an issue or pull - request._ If you have a particular skill that can help in solving the problem - then consider reading through these issues as they are a great place to offer - your expertise. Not everyone can do everything. This is the time, the - community needs your help so you better dive in! - -- ![Invalid](https://img.shields.io/badge/-invalid-%239a9a9a) _It indicates that - an issue or pull request is no longer relevant._ - -- ![Question](https://img.shields.io/badge/-question-%23cc317c) _It indicates - that an issue or pull request needs more information._ These issues are some - questions regarding the project that might need clarifications and a bit of - discussion. - -- ![Dependencies](https://img.shields.io/badge/-dependencies-%230366d6) _It - helps to track and resolve vulnerabilities for certain types of dependencies._ - -- ![WontFix](https://img.shields.io/badge/-wontfix-lightgrey) _It indicates - issues that are currently not viable to solve or out of scope of the project_ - -## Making a change with a pull request :zap: - -Pull requests with patches, improvements and new features are a great help. - -### Fork the project, clone your fork, and add the BIDS Apps remote: - -```sh -# Clone your fork of the repo into the current directory -git clone https://github.com//bids-apps.github.io.git - -# Navigate to the cloned directory -cd bids-apps.github.io - -# Assign the original repo to a remote called "upstream" -git remote add upstream git@github.com:bids-apps/bids-apps.github.io.git -``` - -### Get the latest changes from upstream: - -```sh -git checkout master -git pull upstream master -``` - -### Create a new branch from the main master branch to contain your changes: - -```sh -git checkout -b -``` - -### Add and Commit your changes - -```sh -git add -git commit -m "write a commit message" -``` - -Examine the status of your working tree at each step to see if everything is -clean: - -```sh -git status -``` - -Push your topic branch up to your fork: - -```sh -git push origin -``` - -## Build the website locally - -Requires to install [Jekyll](https://jekyllrb.com/docs/#prerequisites) (a static -website generator). - -```sh -bundle install -bundle exec jekyll serve -``` - -### Open a Pull Request with a clear title and description against the master branch. - -[Open a Pull Request.](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request) - -## Example Pull Request - -![Example Pull Request](https://i.imgur.com/s8yELfK.png) - -A maintainer/developer will review and might suggest some changes before merging -them into the repository. - -Success!! :tada: Well done! :bowing_man: - -Note that each Pull Request will be accompanied by a preview of the website built by [Netlify](https://www.netlify.com/). -Just see the status checks at the bottom of your Pull Request in the browser. - -## Recognizing Contributions 🗒️ - -BIDS follows the -[all-contributors](https://github.com/all-contributors/all-contributors#emoji-key) -specification, so we welcome and recognize all contributions from documentation -to testing to code development. You can see a list of current contributors in -the -[BIDS specification](https://github.com/bids-standard/bids-specification/blob/master/src/99-appendices/01-contributors.md). - -## Get in touch with us :mailbox_with_mail: - -If you have any questions, comments, or suggestions, please feel free to create -an issue [here](https://github.com/bids-apps/bids-apps.github.io/issues)! A -Maintainer or community member will follow up. - -If you'd prefer to email then you can contact us at [bids.maintenance@gmail.com](mailto:bids.maintenance@gmail.com) - -## A Special Note :high_brightness: - -Thank you for reading through and we look forward to your valuable contribution! -:smiley: - -We appreciate the hard work and time of our contributors who have built and -maintained BIDS-Apps! :raised_hands: - -You are Awesome! :star2: :star_struck: diff --git a/Gemfile b/Gemfile index 9321148..59c73bd 100644 --- a/Gemfile +++ b/Gemfile @@ -2,5 +2,5 @@ source 'https://rubygems.org' gem "github-pages", group: :jekyll_plugins gem "jekyll-paginate" - +gem 'jekyll-redirect-from' gem "webrick", "~> 1.7" diff --git a/README.md b/README.md index 2a2506d..c57a531 100644 --- a/README.md +++ b/README.md @@ -1,78 +1,4 @@ -[![Ruby Tests](https://github.com/bids-apps/bids-apps.github.io/actions/workflows/ruby_tests.yml/badge.svg)](https://github.com/bids-apps/bids-apps.github.io/actions/workflows/ruby_tests.yml) -[![CircleCI](https://circleci.com/gh/bids-apps/bids-apps.github.io/tree/master.svg?style=shield)](https://circleci.com/gh/bids-apps/bids-apps.github.io/tree/master) +This BIDS Apps website has now been integrated to the BIDS website: +https://github.com/bids-standard/bids-website.git -This is the repository for generating the BIDS Apps website. -See out [CONTRIBUTING guidelines](./CONTRIBUTING.md) to see how you can help. - -*Want to learn more about working with BIDS? Have a question, comment, or suggestion?* - -1. Read some introductory material, most likely the very basic problems have already been addressed! - - [BIDS Starter Kit](https://github.com/bids-standard/bids-starter-kit) for tutorials, wikis, templates, ... -2. Post your question in one of several channels where BIDS members are active - - the [NeuroStars](https://neurostars.org/tags/bids) discourse forum - - the [BrainHack Mattermost](https://mattermost.brainhack.org), for instant messaging (see also this [news item](https://bids.neuroimaging.io/2020/06/24/Join-the-BIDS-community-on-the-BrainHack-Mattermost.html)) - - the [Google group](https://groups.google.com/forum/#!forum/bids-discussion), for broader discussions surrounding BIDS - - the [specification repository issue page](https://github.com/bids-standard/bids-specification/issues), if you found inconsistencies, typos, or other issues with the BIDS specification itself - -## Dashboard - -Status of the default branch of each app. - - - - - -| name | status | ci | last commit | version | -|:------------------------------------------------------------------------------------------------------------------------------------------------|:-------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------| -| [bids-apps/afni_proc](https://github.com/bids-apps/afni_proc) | active | [![CI](https://circleci.com/gh/bids-apps/afni_proc.svg?style=shield)](https://circleci.com/gh/bids-apps/afni_proc/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/afni_proc) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/afni_proc?label=version) | -| [bids-apps/antsCorticalThickness](https://github.com/bids-apps/antsCorticalThickness) | active | [![CI](https://circleci.com/gh/bids-apps/antsCorticalThickness.svg?style=shield)](https://circleci.com/gh/bids-apps/antsCorticalThickness/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/antsCorticalThickness) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/antscorticalthickness?label=version) | -| [bids-apps/baracus](https://github.com/bids-apps/baracus) | active | [![CI](https://circleci.com/gh/bids-apps/baracus.svg?style=shield)](https://circleci.com/gh/bids-apps/baracus/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/baracus) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/baracus?label=version) | -| [bids-apps/brainiak-srm](https://github.com/bids-apps/brainiak-srm) | active | [![CI](https://circleci.com/gh/bids-apps/brainiak-srm.svg?style=shield)](https://circleci.com/gh/bids-apps/brainiak-srm/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/brainiak-srm) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/brainiak-srm?label=version) | -| [bids-apps/BrainSuite](https://github.com/bids-apps/BrainSuite) | active | [![CI](https://circleci.com/gh/bids-apps/BrainSuite.svg?style=shield)](https://circleci.com/gh/bids-apps/BrainSuite/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/BrainSuite) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/brainsuite?label=version) | -| [bids-apps/BROCCOLI](https://github.com/bids-apps/BROCCOLI) | active | [![CI](https://circleci.com/gh/bids-apps/BROCCOLI.svg?style=shield)](https://circleci.com/gh/bids-apps/BROCCOLI/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/BROCCOLI) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/broccoli?label=version) | -| [bids-apps/CPAC](https://github.com/bids-apps/CPAC) | active | [![CI](https://circleci.com/gh/bids-apps/CPAC.svg?style=shield)](https://circleci.com/gh/bids-apps/CPAC/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/CPAC) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/cpac?label=version) | -| [bids-apps/DPARSF](https://github.com/bids-apps/DPARSF) | active | [![CI](https://circleci.com/gh/bids-apps/DPARSF.svg?style=shield)](https://circleci.com/gh/bids-apps/DPARSF/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/DPARSF) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/dparsf?label=version) | -| [bids-apps/example](https://github.com/bids-apps/example) | active | [![CI](https://circleci.com/gh/bids-apps/example.svg?style=shield)](https://circleci.com/gh/bids-apps/example/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/example) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/example?label=version) | -| [bids-apps/freesurfer](https://github.com/bids-apps/freesurfer) | active | [![CI](https://circleci.com/gh/bids-apps/freesurfer.svg?style=shield)](https://circleci.com/gh/bids-apps/freesurfer/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/freesurfer) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/freesurfer?label=version) | -| [bids-apps/giga_connectome](https://github.com/bids-apps/giga_connectome) | active | [![CI](https://github.com/bids-apps/giga_connectome/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/bids-apps/giga_connectome/actions/workflows/test.yml/) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/giga_connectome) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/giga_connectome?label=version) | -| [bids-apps/HCPPipelines](https://github.com/bids-apps/HCPPipelines) | active | [![CI](https://circleci.com/gh/bids-apps/HCPPipelines.svg?style=shield)](https://circleci.com/gh/bids-apps/HCPPipelines/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/HCPPipelines) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/hcppipelines?label=version) | -| [bids-apps/hyperalignment](https://github.com/bids-apps/hyperalignment) | active | [![CI](https://circleci.com/gh/bids-apps/hyperalignment.svg?style=shield)](https://circleci.com/gh/bids-apps/hyperalignment/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/hyperalignment) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/hyperalignment?label=version) | -| [bids-apps/MAGeTbrain](https://github.com/bids-apps/MAGeTbrain) | active | [![CI](https://circleci.com/gh/bids-apps/MAGeTbrain.svg?style=shield)](https://circleci.com/gh/bids-apps/MAGeTbrain/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/MAGeTbrain) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/magetbrain?label=version) | -| [bids-apps/mindboggle](https://github.com/bids-apps/mindboggle) | active | [![CI](https://circleci.com/gh/bids-apps/mindboggle.svg?style=shield)](https://circleci.com/gh/bids-apps/mindboggle/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/mindboggle) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/mindboggle?label=version) | -| [bids-apps/MRtrix3_connectome](https://github.com/bids-apps/MRtrix3_connectome) | active | [![CI](https://circleci.com/gh/bids-apps/MRtrix3_connectome.svg?style=shield)](https://circleci.com/gh/bids-apps/MRtrix3_connectome/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/MRtrix3_connectome) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/mrtrix3_connectome?label=version) | -| [bids-apps/ndmg](https://github.com/bids-apps/ndmg) | active | [![CI](https://circleci.com/gh/bids-apps/ndmg.svg?style=shield)](https://circleci.com/gh/bids-apps/ndmg/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/ndmg) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/ndmg?label=version) | -| [bids-apps/nipypelines](https://github.com/bids-apps/nipypelines) | active | [![CI](https://circleci.com/gh/bids-apps/nipypelines.svg?style=shield)](https://circleci.com/gh/bids-apps/nipypelines/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/nipypelines) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/nipypelines?label=version) | -| [bids-apps/oppni](https://github.com/bids-apps/oppni) | active | [![CI](https://circleci.com/gh/bids-apps/oppni.svg?style=shield)](https://circleci.com/gh/bids-apps/oppni/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/oppni) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/oppni?label=version) | -| [bids-apps/PyMVPA](https://github.com/bids-apps/PyMVPA) | active | [![CI](https://circleci.com/gh/bids-apps/PyMVPA.svg?style=shield)](https://circleci.com/gh/bids-apps/PyMVPA/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/PyMVPA) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/pymvpa?label=version) | -| [bids-apps/QAP](https://github.com/bids-apps/QAP) | active | [![CI](https://circleci.com/gh/bids-apps/QAP.svg?style=shield)](https://circleci.com/gh/bids-apps/QAP/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/QAP) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/qap?label=version) | -| [bids-apps/rsHRF](https://github.com/bids-apps/rsHRF) | active | [![CI](https://circleci.com/gh/bids-apps/rsHRF.svg?style=shield)](https://circleci.com/gh/bids-apps/rsHRF/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/rsHRF) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/rshrf?label=version) | -| [bids-apps/SPM](https://github.com/bids-apps/SPM) | active | [![CI](https://circleci.com/gh/bids-apps/SPM.svg?style=shield)](https://circleci.com/gh/bids-apps/SPM/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/SPM) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/spm?label=version) | -| [bids-apps/tracula](https://github.com/bids-apps/tracula) | active | [![CI](https://circleci.com/gh/bids-apps/tracula.svg?style=shield)](https://circleci.com/gh/bids-apps/tracula/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/tracula) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/tracula?label=version) | -| [bids-apps/aa](https://github.com/bids-apps/aa) | unmaintained | [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/aa) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/aa?label=version) | -| [bids-apps/FibreDensityAndCrosssection](https://github.com/bids-apps/FibreDensityAndCrosssection) | unmaintained | [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/FibreDensityAndCrosssection) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/fibredensityandcrosssection?label=version) | -| [bids-apps/niak](https://github.com/bids-apps/niak) | unmaintained | [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/niak) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/niak?label=version) | -| [bids-apps/rs_signal_extract](https://github.com/bids-apps/rs_signal_extract) | unmaintained | [![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/) | ![GitHub last commit](https://img.shields.io/github/last-commit/bids-apps/rs_signal_extract) | ![version tag](https://img.shields.io/github/v/tag/bids-apps/rs_signal_extract?label=version) | -| [cpp-lln-lab/bidsMReye](https://github.com/cpp-lln-lab/bidsMReye) | active | [![CI](https://github.com/cpp-lln-lab/bidsMReye/actions/workflows/system_tests.yml/badge.svg?branch=main)](https://github.com/cpp-lln-lab/bidsMReye/actions/workflows/system_tests.yml/) | ![GitHub last commit](https://img.shields.io/github/last-commit/cpp-lln-lab/bidsMReye) | ![version tag](https://img.shields.io/github/v/tag/cpp-lln-lab/bidsmreye?label=version) | -| [cpp-lln-lab/bidspm](https://github.com/cpp-lln-lab/bidspm) | active | [![CI](https://github.com/cpp-lln-lab/bidspm/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/cpp-lln-lab/bidspm/actions/workflows/tests.yml/) | ![GitHub last commit](https://img.shields.io/github/last-commit/cpp-lln-lab/bidspm) | ![version tag](https://img.shields.io/github/v/tag/cpp-lln-lab/bidspm?label=version) | -| [djarecka/fmriprep-fake](https://github.com/djarecka/fmriprep-fake) | active | [![CI](https://img.shields.io/badge/CI-none-lightgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/djarecka/fmriprep-fake) | ![version tag](https://img.shields.io/github/v/tag/djarecka/fmriprep-fake?label=version) | -| [khanlab/funcmasker-flex](https://github.com/khanlab/funcmasker-flex) | active | [![CI](https://github.com/khanlab/funcmasker-flex/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/khanlab/funcmasker-flex/actions/workflows/test.yml/) | ![GitHub last commit](https://img.shields.io/github/last-commit/khanlab/funcmasker-flex) | ![version tag](https://img.shields.io/github/v/tag/khanlab/funcmasker-flex?label=version) | -| [trendscenter/gift-bids](https://github.com/trendscenter/gift-bids) | active | [![CI](https://img.shields.io/badge/CI-none-lightgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/trendscenter/gift-bids) | ![version tag](https://img.shields.io/github/v/tag/trendscenter/gift-bids?label=version) | -| [khanlab/hippunfold](https://github.com/khanlab/hippunfold) | active | [![CI](https://circleci.com/gh/khanlab/hippunfold.svg?style=shield)](https://circleci.com/gh/khanlab/hippunfold/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/khanlab/hippunfold) | ![version tag](https://img.shields.io/github/v/tag/khanlab/hippunfold?label=version) | -| [MICA-MNI/micapipe](https://github.com/MICA-MNI/micapipe) | active | [![CI](https://img.shields.io/badge/CI-none-lightgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/MICA-MNI/micapipe) | ![version tag](https://img.shields.io/github/v/tag/mica-mni/micapipe?label=version) | -| [nipreps/fmriprep](https://github.com/nipreps/fmriprep) | active | [![CI](https://circleci.com/gh/nipreps/fmriprep.svg?style=shield)](https://circleci.com/gh/nipreps/fmriprep/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/fmriprep) | ![version tag](https://img.shields.io/github/v/tag/nipreps/fmriprep?label=version) | -| [nipreps/dmriprep](https://github.com/nipreps/dmriprep) | active | [![CI](https://circleci.com/gh/nipreps/dmriprep.svg?style=shield)](https://circleci.com/gh/nipreps/dmriprep/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/dmriprep) | ![version tag](https://img.shields.io/github/v/tag/nipreps/dmriprep?label=version) | -| [nipreps/mriqc](https://github.com/nipreps/mriqc) | active | [![CI](https://circleci.com/gh/nipreps/mriqc.svg?style=shield)](https://circleci.com/gh/nipreps/mriqc/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/mriqc) | ![version tag](https://img.shields.io/github/v/tag/nipreps/mriqc?label=version) | -| [nipreps/nibabies](https://github.com/nipreps/nibabies) | active | [![CI](https://circleci.com/gh/nipreps/nibabies.svg?style=shield)](https://circleci.com/gh/nipreps/nibabies/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/nibabies) | ![version tag](https://img.shields.io/github/v/tag/nipreps/nibabies?label=version) | -| [nipreps/nirodents](https://github.com/nipreps/nirodents) | active | [![CI](https://circleci.com/gh/nipreps/nirodents.svg?style=shield)](https://circleci.com/gh/nipreps/nirodents/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/nirodents) | ![version tag](https://img.shields.io/github/v/tag/nipreps/nirodents?label=version) | -| [nipreps/smriprep](https://github.com/nipreps/smriprep) | active | [![CI](https://circleci.com/gh/nipreps/smriprep.svg?style=shield)](https://circleci.com/gh/nipreps/smriprep/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/nipreps/smriprep) | ![version tag](https://img.shields.io/github/v/tag/nipreps/smriprep?label=version) | -| [PeerHerholz/BIDSonym](https://github.com/PeerHerholz/BIDSonym) | active | [![CI](https://app.travis-ci.com/PeerHerholz/BIDSonym.svg?branch=master)](https://app.travis-ci.com/PeerHerholz/BIDSonym) | ![GitHub last commit](https://img.shields.io/github/last-commit/PeerHerholz/BIDSonym) | ![version tag](https://img.shields.io/github/v/tag/peerherholz/bidsonym?label=version) | -| [PennLINC/aslprep](https://github.com/PennLINC/aslprep) | active | [![CI](https://img.shields.io/badge/CI-UNKNOWN-darkgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/PennLINC/aslprep) | ![version tag](https://img.shields.io/github/v/tag/pennlinc/aslprep?label=version) | -| [PennLINC/xcp_d](https://github.com/PennLINC/xcp_d) | active | [![CI](https://img.shields.io/badge/CI-UNKNOWN-darkgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/PennLINC/xcp_d) | ![version tag](https://img.shields.io/github/v/tag/pennlinc/xcp_d?label=version) | -| [PennLINC/qsiprep](https://github.com/PennLINC/qsiprep) | active | [![CI](https://img.shields.io/badge/CI-UNKNOWN-darkgrey)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/PennLINC/qsiprep) | ![version tag](https://img.shields.io/github/v/tag/pennlinc/qsiprep?label=version) | -| [poldracklab/fitlins](https://github.com/poldracklab/fitlins) | active | [![CI](https://circleci.com/gh/poldracklab/fitlins.svg?style=shield)](https://circleci.com/gh/poldracklab/fitlins/tree/dev) | ![GitHub last commit](https://img.shields.io/github/last-commit/poldracklab/fitlins) | ![version tag](https://img.shields.io/github/v/tag/poldracklab/fitlins?label=version) | -| [connectomicslab/connectomemapper3](https://github.com/connectomicslab/connectomemapper3) | active | [![CI](https://circleci.com/gh/connectomicslab/connectomemapper3.svg?style=shield)](https://circleci.com/gh/connectomicslab/connectomemapper3/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/connectomicslab/connectomemapper3) | ![version tag](https://img.shields.io/github/v/tag/connectomicslab/connectomemapper3?label=version) | -| [sebastientourbier/multiscalebrainparcellator](https://github.com/sebastientourbier/multiscalebrainparcellator) | active | [![CI](https://circleci.com/gh/sebastientourbier/multiscalebrainparcellator.svg?style=shield)](https://circleci.com/gh/sebastientourbier/multiscalebrainparcellator/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/sebastientourbier/multiscalebrainparcellator) | ![version tag](https://img.shields.io/github/v/tag/sebastientourbier/multiscalebrainparcellator?label=version) | -| [Medical-Image-Analysis-Laboratory/mialsuperresolutiontoolkit](https://github.com/Medical-Image-Analysis-Laboratory/mialsuperresolutiontoolkit) | active | [![CI](https://circleci.com/gh/Medical-Image-Analysis-Laboratory/mialsuperresolutiontoolkit.svg?style=shield)](https://circleci.com/gh/Medical-Image-Analysis-Laboratory/mialsuperresolutiontoolkit/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/Medical-Image-Analysis-Laboratory/mialsuperresolutiontoolkit) | ![version tag](https://img.shields.io/github/v/tag/medical-image-analysis-laboratory/mialsuperresolutiontoolkit?label=version) | -| [DCAN-Labs/BIBSnet](https://github.com/DCAN-Labs/BIBSnet) | active | [![CI](https://circleci.com/gh/DCAN-Labs/BIBSnet.svg?style=shield)](https://circleci.com/gh/DCAN-Labs/BIBSnet/tree/master) | ![GitHub last commit](https://img.shields.io/github/last-commit/DCAN-Labs/BIBSnet) | ![version tag](https://img.shields.io/github/v/tag/dcan-labs/bibsnet?label=version) | -| [openneuropet/petdeface](https://github.com/openneuropet/petdeface) | active | [![CI](https://codebuild.us-east-1.amazonaws.com/badges?uuid=eyJlbmNyeXB0ZWREYXRhIjoiYzdXV0tYSkQzTVNkcG04cHA2S055UXlKRlZTU1VONThUMVRoZVcwU3l1aHFhdVBlNDNaRGVCYzdWM1Q0WjYzQ1lRU2ZTSHpmSERPWFRkVXVyb3k3RTZBPSIsIml2UGFyYW1ldGVyU3BlYyI6IjRCZFFIQnNGT2lKcDA1VG4iLCJtYXRlcmlhbFNldFNlcmlhbCI6MX0%3D&branch=main)](None) | ![GitHub last commit](https://img.shields.io/github/last-commit/openneuropet/petdeface) | ![version tag](https://img.shields.io/github/v/tag/openneuropet/petdeface?label=version) | diff --git a/_config.yml b/_config.yml index a8572d8..e51ff63 100644 --- a/_config.yml +++ b/_config.yml @@ -48,6 +48,7 @@ kramdown: plugins: - jekyll-paginate +- jekyll-redirect-from # Defines buttons and links to the pages that will be displayed in the nav bar # see _includes/header.html @@ -474,6 +475,33 @@ apps: - raw description: Structural MRI PREProcessing (sMRIPrep) workflows for NIPreps (NeuroImaging PREProcessing tools) +- gh: nipreps/fmripost-aroma + status: active + dh: nipreps/fmripost-aroma + ds_type: + - derivative + datatype: + - func + description: Functional MRI postprocessing with ICA-AROMA + +- gh: nipreps/fmripost-phase + status: active + dh: nipreps/fmripost-phase + ds_type: + - derivative + datatype: + - func + description: Postprocessing of complex-valued fMRI data + +- gh: nipreps/fmripost-rapidtide + status: active + dh: nipreps/fmripost-rapidtide + ds_type: + - derivative + datatype: + - func + description: Functional MRI postprocessing with Rapidtide + - gh: PeerHerholz/BIDSonym status: active dh: peerherholz/bidsonym @@ -514,10 +542,21 @@ apps: - raw datatype: - dwi - description: Preprocessing and reconstruction of diffusion MRI + description: Preprocessing of diffusion MRI ci: circleci branch: master +- gh: PennLINC/qsirecon + status: active + dh: pennlinc/qsirecon + ds_type: + - derivative + datatype: + - dwi + description: Reconstruction of preprocessed diffusion MRI + ci: circleci + branch: main + - gh: poldracklab/fitlins status: active dh: poldracklab/fitlins @@ -528,6 +567,18 @@ apps: - func description: Fit Linear Models to BIDS Datasets +- gh: reprostat/reproa + dh: reprostat/reproa + status: active + branch: master + ds_type: + - raw + datatype: + - anat + - fmap + - func + description: BIDS App containing an instance of the ReproAnalysis (reproa) software (core only) running under Octave with minimum dependencies. + - gh: connectomicslab/connectomemapper3 status: active dh: sebastientourbier/connectomemapper-bidsapp diff --git a/_includes/app_subtable.html b/_includes/app_subtable.html deleted file mode 100644 index e3dcc0b..0000000 --- a/_includes/app_subtable.html +++ /dev/null @@ -1,37 +0,0 @@ -{{/* Plots the apps by filtering them by dataset type and datatype */}} - - - -

- - - - For BIDS {{ include.ds_type }} datasets: {{ include.datatype }} data -

- - - - {% for app in include.apps %} - - {% assign display = false %} - {% if app.datatype contains include.datatype and app.ds_type contains include.ds_type and app.status == "active" %} - {% assign display = true %} - {% endif %} - - {% if display %} - {% else %} - {% continue %} - {% endif %} - - {% if app.branch %} - {% assign branch = app.branch %} - {% else %} - {% assign branch = "master" %} - {% endif %} - - {% include table_row.html app=app branch=branch %} - - {% endfor %} -
diff --git a/_includes/app_table.html b/_includes/app_table.html deleted file mode 100644 index 02c6985..0000000 --- a/_includes/app_table.html +++ /dev/null @@ -1,24 +0,0 @@ -{{/* Plots the apps by filtering as maintained or not */}} - - - {% for app in site.apps %} - - {% assign display = false %} - {% if app.status contains include.status %} - {% assign display = true %} - {% endif %} - {% if display %} - {% else %} - {% continue %} - {% endif %} - - {% if app.branch %} - {% assign branch = app.branch %} - {% else %} - {% assign branch = "master" %} - {% endif %} - - {% include table_row.html app=app branch=branch %} - - {% endfor %} -
diff --git a/_includes/header.html b/_includes/header.html index 371f849..364d165 100644 --- a/_includes/header.html +++ b/_includes/header.html @@ -7,6 +7,7 @@ class="panel-cover" style="background-image: url({{ site.baseurl }}/images/cover.jpg)" > +
diff --git a/_includes/table_row.html b/_includes/table_row.html deleted file mode 100644 index 04f4aa1..0000000 --- a/_includes/table_row.html +++ /dev/null @@ -1,76 +0,0 @@ -{% assign app = include.app %} -{% assign branch = include.branch %} -{% assign tokens = app.gh | split: "/" %} -{% assign app_name = tokens[1] %} - - - - {{ app_name }} - - - - {% if app.status != "active" %} - - - - {% else %} - {% if app.ci == "travis" %} - - - - {% elsif app.ci == "gh" %} - - - - {% elsif app.ci == "none" %} - - {% else %} - - - - {% endif %} - {% endif %} - - - - GitHub last commit - - - - - Number of open issues on github - - - - - - Number of Docker Pulls - - - - - Docker Image Size (latest by date) - - diff --git a/_layouts/default.html b/_layouts/default.html index 67f05c5..542ccde 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -4,23 +4,15 @@ - -
- {% include header.html %} +
+

+ The BIDS apps website moved to the new BIDS website. +

+

Go and check it out and let us know what you think.

+
+
{{ content }}
diff --git a/about.md b/about.md index 3aeab90..a9a11a8 100644 --- a/about.md +++ b/about.md @@ -1,69 +1,7 @@ --- layout: post title: What is a BIDS App? ---- - -A BIDS App is a container image capturing a neuroimaging pipeline that takes a -BIDS formatted dataset as input. -[BIDS (Brain Imaging Data Structure)](https://bids.neuroimaging.io) is an -emerging standard for organizing and describing neuroimaging datasets. Each BIDS -App has the same core set of command line arguments, making them easy to run and -integrate into automated platforms. BIDS Apps are constructed in a way that does -not depend on any software outside of the image other than the container engine. - -BIDS Apps rely upon two technologies for container computing: - -- [Docker](https://docker.com) for building, hosting as well as running - containers on local hardware (running Windows, Mac OS X or Linux) or in the - cloud. - -- [Apptainer](https://apptainer.org/) - for running containers on HPCs. - -BIDS Apps are deposited in the Docker Hub repository, making them openly -accessible. Each app is versioned and all of the historical versions are -available to download. By reporting the BIDS App name and version in a -manuscript, authors can provide others with the ability to exactly replicate -their analysis workflow. - -Docker is used for its excellent documentation, maturity, and the Docker Hub -service for storage and distribution of the images. Docker containers are easily -run on personal computers and cloud services. However, the Docker Engine is -rarely available in HPCs. Apptainer is a unique container technology designed -from the ground up, with the encapsulation of binary dependencies and HPC use in -mind. Its main advantage over Docker is that it does not require root access for -container execution and thus is safe to use on multi-tenant systems. In -addition, it does not require recent Linux kernel functionalities (such as -namespaces, cgroups and capabilities), making it easy to install on legacy -systems. - -## To learn more about BIDS apps - -- read the [journal article](https://doi.org/10.1371/journal.pcbi.1005209) -- see the - [poster presented at OHBM 2017](https://doi.org/10.5281/zenodo.6417361) -- read the guidelines mentioned in the -[BIDS extension proposal 027](https://bids.neuroimaging.io/bep027) - for more advanced about BIDS Apps. - -## To learn more about BIDS - -If you Have a question, comment, or suggestion? - -1. Read some introductory material, most likely the very basic problems have - already been addressed! - -- [BIDS Starter Kit](https://github.com/bids-standard/bids-starter-kit) for - tutorials, wikis, templates, ... - -2. Post your question in one of several channels where BIDS members are active - -- the [NeuroStars](https://neurostars.org/tags/bids) discourse forum -- the [BrainHack Mattermost](https://mattermost.brainhack.org), for instant - messaging (see also this - [news item](https://bids.neuroimaging.io/2020/06/24/Join-the-BIDS-community-on-the-BrainHack-Mattermost.html)) -- the [Google group](https://groups.google.com/forum/#!forum/bids-discussion), - for broader discussions surrounding BIDS -- the - [specification repository issue page](https://github.com/bids-standard/bids-specification/issues), - if you found inconsistencies, typos, or other issues with the BIDS - specification itself +permalink: /about +redirect_to: + - https://bids-website.readthedocs.io/en/latest/tools/bids-apps.html +--- \ No newline at end of file diff --git a/apps.md b/apps.md index 8d896ae..0b8a7b8 100644 --- a/apps.md +++ b/apps.md @@ -1,37 +1,5 @@ --- layout: default ---- - -
- -
-

Available BIDS Apps

-
- -

All apps

- - {% include app_table.html apps=site.apps status="active" %} - -
-
-
- -

Unmaintainted apps

- - {% include app_table.html apps=site.apps status="unmaintained" %} - -
-
-
- -

Apps sorted by input type

- - {% include app_subtable.html apps=site.apps ds_type="raw" datatype="anat" %} - {% include app_subtable.html apps=site.apps ds_type="raw" datatype="func" %} - {% include app_subtable.html apps=site.apps ds_type="raw" datatype="dwi" %} - - {% include app_subtable.html apps=site.apps ds_type="derivative" datatype="anat" %} - {% include app_subtable.html apps=site.apps ds_type="derivative" datatype="func" %} - {% include app_subtable.html apps=site.apps ds_type="derivative" datatype="dwi" %} - -
+redirect_to: + - https://bids-website.readthedocs.io/en/latest/tools/bids-apps.html +--- \ No newline at end of file diff --git a/dev_faq.md b/dev_faq.md index 8556a29..23257ad 100644 --- a/dev_faq.md +++ b/dev_faq.md @@ -1,162 +1,7 @@ --- layout: post -title: Developer FAQ ---- - -- [Is there a BIDS App template?](#is-there-a-bids-app-template) -- [Which container should I use to start building my BIDS App?](#which-container-should-i-use-to-start-building-my-bids-app) -- [API](#api) - - [What should the API of my BIDS App look like?](#what-should-the-api-of-my-bids-app-look-like) - - [Can I add more arguments to the API of my App?](#can-i-add-more-arguments-to-the-api-of-my-app) - - [What the kinds of analysis levels (`participant` and `group`) mean?](#what-the-kinds-of-analysis-levels-participant-and-group-mean) - - [What do we do if our application does not have any use for the group level analysis?](#what-do-we-do-if-our-application-does-not-have-any-use-for-the-group-level-analysis) -- [Is it mandatory to first check the dataset validity using the BIDS-validator?](#is-it-mandatory-to-first-check-the-dataset-validity-using-the-bids-validator) -- [How do I upload my BIDS App to the BIDS App Github org?](#how-do-i-upload-my-bids-app-to-the-bids-app-github-org) -- [Testing Data](#testing-data) -- [Versioning](#versioning) - - [When is a new image deposited to Docker Hub?](#when-is-a-new-image-deposited-to-docker-hub) - - [How to tag a new release?](#how-to-tag-a-new-release) - - [How should I version my BIDS App?](#how-should-i-version-my-bids-app) - - [I want to release a new version of a BIDS App, but the pipeline version is the same?](#i-want-to-release-a-new-version-of-a-bids-app-but-the-pipeline-version-is-the-same) - - [Where should I describe changes between versions?](#where-should-i-describe-changes-between-versions) - - [How can I check a version of a container I have available locally?](#how-can-i-check-a-version-of-a-container-i-have-available-locally) - - [How can I download a particular version of a BIDS App?](#how-can-i-download-a-particular-version-of-a-bids-app) - -## 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. - -## Which container should I use to start building my BIDS 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. - -## 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` - -with an API call that would look like this: - -```bash -app_name bids_dir output_dir analysis_level -``` - -### 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. - -We recommend you follow the guidelines mentioned in the -[BIDS extension proposal 027](https://bids.neuroimaging.io/bep027) -for more information on specifying the API of your App. - -### What the kinds of 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. - -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`. - -### What do we do if our 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)) - -## 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. - -## 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](bids.maintenance+apps@gmail.com) to have a repo created for -you. - -If you base your code on deployment on -docker hub will happen automatically via Circle-ci. - -If you want your App to show on the BIDS App website -[here](https://bids-apps.neuroimaging.io/apps/)), you will in any case have to -update the `_config.yml` in the -[BIDS App website repository](https://github.com/bids-apps/bids-apps.github.io.git). - - - -## Testing Data - -For both lightweight and full datasets to test your BIDS App, you can choose -from one of these -[example datasets](https://bids-standard.github.io/bids-starter-kit/dataset_examples.html) - -## Versioning - -### 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. - -### How to tag a new release? - -```bash -git tag v0.0.1 -git push -``` - -### 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. For -example in case of HCP Pipelines this would be `v3.17.0`. - -### 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`. - -### 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. It accepts markdown syntax and allows you to explain in -detail what has changed. Here's an -[example](https://github.com/bids-apps/example/releases). - -### How can I check a version of a container I have available locally? - -Inside each BIDS App there is a /version file with the version number. This file -is automatically populated with tag used to trigger the build on the CI server. - -### 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: - -```bash -docker pull bids/example:v0.0.5 -``` +title: BIDS app FAQ +permalink: /dev_faq +redirect_to: + - https://bids-website.readthedocs.io/en/latest/faq/bids-apps.html +--- \ No newline at end of file diff --git a/tools/create_dahsboard.py b/tools/create_dahsboard.py deleted file mode 100644 index d7a5b67..0000000 --- a/tools/create_dahsboard.py +++ /dev/null @@ -1,87 +0,0 @@ -"""Adds a dashboard in README that shows the status of all bids apps default branch CI runs.""" - -import ruamel.yaml as yaml -from pathlib import Path -import pandas as pd - -yaml = yaml.YAML() - -root_dir = Path(__file__).parent.parent - -data = yaml.load(root_dir / "_config.yml") - -name = [] -status = [] -ci = [] -last_commit = [] -version = [] - -for app in data["apps"]: - name.append(f"[{app['gh']}](https://github.com/{app['gh']})") - - status.append(app.get("status", "unknown")) - - branch = app.get("branch", "master") - - if app.get("status") == "unmaintained": - ci.append( - "[![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)" - ) - - else: - - if not app.get("ci"): - image = f"https://circleci.com/gh/{ app['gh'] }.svg?style=shield" - link = f"https://circleci.com/gh/{ app['gh'] }/tree/{ branch }" - - elif app["ci"] == "none": - image = "https://img.shields.io/badge/CI-none-lightgrey" - link = None - - elif app["ci"] == "travis": - image = f"https://app.travis-ci.com/{ app['gh'] }.svg?branch={ branch }" - link = f"https://app.travis-ci.com/{ app['gh'] }" - - elif app["ci"] == "gh": - image = f"https://github.com/{ app['gh'] }/actions/workflows/{ app['workflow'] }.yml/badge.svg?branch={ branch }" - link = f"https://github.com/{ app['gh'] }/actions/workflows/{ app['workflow'] }.yml/" - - elif app["ci"] == "aws_codebuild": - image = f"{ app['badge'] }" - link = None - - else: - image = "https://img.shields.io/badge/CI-UNKNOWN-darkgrey" - link = None - - ci.append(f"[![CI]({image})]({link})") - - last_commit.append( - f"![GitHub last commit](https://img.shields.io/github/last-commit/{app['gh']})" - ) - - version.append( - f"![version tag](https://img.shields.io/github/v/tag/{ app['gh'].lower() }?label=version)" - ) - -df = pd.DataFrame( - { - "name": name, - "status": status, - "ci": ci, - "last commit": last_commit, - "version": version, - } -) - -# append to readme -with open(root_dir / "README.md", "r") as f: - readme = f.readlines() - -with open(root_dir / "README.md", "w") as f: - for line in readme: - f.write(line) - if line.startswith(""): - f.write("\n\n") - df.to_markdown(f, index=False) - break diff --git a/tutorial.md b/tutorial.md index b9dd748..91d0508 100644 --- a/tutorial.md +++ b/tutorial.md @@ -1,72 +1,7 @@ --- layout: post title: Running a BIDS App ---- - -## Running a BIDS App locally - -Running a BIDS App on a local system can be performed using Docker, which is -easy to install on all three major operating systems. After installing and -starting docker, download the relevant data, -[ds005.tar](https://drive.google.com/drive/folders/0B2JWN60ZLkgkMGlUY3B4MXZIZW8), -and untar it in a directory. `ds005` will be our input directory in the -following example. Create an `outputs` directory as well. To run the first stage -of the example BIDS App for participant number 01, open a console (terminal or -cmd) and type: - -```bash -docker run -ti --rm \ - -v /Users/srycajal/data/ds005:/bids_dataset:ro \ - -v /Users/srycajal/outputs:/outputs \ - bids/example:0.0.4 \ - /bids_dataset /outputs participant --participant_label 01 -``` - -This command runs docker with some flags and then binds the input directory on -our local machine, for example, `/Users/srycajal/data/ds005`, to a preset -directory inside of the docker container (`/bids_dataset`). You must use the -absolute path to both of these directories. Similarly, we bind the `outputs` -directory on our local machine e.g., `/Users/srycajal/outputs` to the `/outputs` -directory inside the container. This is the path where results should be stored. - -Next, the command lists the docker container to download from Docker Hub and -run: `bids/example:0.0.4`. Finally, `--participant_label 01` limits the data -that will be used to just the first subject in the dataset. If we wanted to run -all the participants, we would simply remove `--participant_label 01`. Or we -could select a couple of participants like this: `--participant_label 01 03`. If -the BIDS App was not run before on this machine, the docker image will be -automatically downloaded from Docker Hub. - -## Running a BIDS App on a cluster (HPC) - -Before a BIDS App can be run on a cluster, it first needs to be saved to an -Apptainer-compatible image file. This step needs to be performed outside of -the cluster (for example on a laptop) and requires Docker: - -```bash -docker run --privileged -ti --rm \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v /home/srycajal/apptainer_images:/output \ - singularityware/docker2singularity \ - bids/example:0.0.4 -``` - -Where `/home/srycajal/apptainer_images` is a path where the image will be -stored. After transferring the .img file to a cluster it can be run like any -other executable: - -```bash -./bids_example-0.0.4.img /bids_dataset /outputs participant --participant_label 01 -``` - -## Helpful links - -To learn more containers: - -- consult this - [tutorial](https://neurohackweek.github.io/docker-for-scientists/) -- watch the [workshop video](https://www.youtube.com/watch?v=wAATYzn8O54) - -BIDS apps tutorials: - -- see this intro to [BIDS apps](https://github.com/fliem/bids_apps_intro) +permalink: /tutorial +redirect_to: + - https://bids-website.readthedocs.io/en/latest/getting_started/bids_apps/tutorial.html +--- \ No newline at end of file