OpenNeuro is a free and open platform for analyzing and sharing neuroimaging data. It is based around the Brain Imaging Data Structure specification.
This project is managed with Lerna and Yarn. To get started, install Yarn and bootstrap the repo.
You can run tests with
yarn test at the top level of the project. For each package,
yarn test --watch will interactively run the tests for changes since the last commit.
Before starting up the services, you will need to copy the example
.env.example file to
config.env. Many of the values are optional, and most that aren't have default values included in their
.example file. Required values below:
config.envmust be set to a large random string.
.envis an absolute path to a directory that will be used to store datasets. This should be a git-annex compatible filesystem and large enough to store some test datasets.
http://localhost:9876 and "Authorized Redirect URIs" is set to
http://localhost:9876/crn/auth/google/callback for a site accessible at
# Ending in .apps.googleusercontent.com GOOGLE_CLIENT_ID= # 24 character secret string GOOGLE_CLIENT_SECRET=
docker-compose is used to run a local copy of all required services together.
# This will run docker-compose in the background (-d flag is --detach) docker-compose up -d
For example, you can restart the server container with
docker-compose restart server or view logs with
docker-compose logs -f --tail=10 server.
- OpenNeuro app - React frontend
- OpenNeuro server - Node.js GraphQL API
- OpenNeuro indexer - ElasticSearch indexer
- OpenNeuro components - ReactJS components library
- OpenNeuro CLI - Node.js command line tool
- DataLad service - DataLad compatible dataset worker microservice
- bids-validator - BIDS validation library
@openneuro npm namespace.
OpenNeuro Command-line utility tool
OpenNeuro supports a CLI tool based on nodejs for uploading and downloading OpenNeuro datasets.