Neurosift

Neurosift: DANDI exploration and NWB visualization in the browser - Published in JOSS (2024)

https://github.com/flatironinstitute/neurosift

Science Score: 98.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in JOSS metadata
  • Academic publication links
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
    Organization flatironinstitute has institutional domain (flatironinstitute.org)
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Earth and Environmental Sciences Physical Sciences - 40% confidence
Engineering Computer Science - 40% confidence
Last synced: 4 months ago · JSON representation

Repository

Browser-based NWB visualization and DANDI exploration

Basic Info
  • Host: GitHub
  • Owner: flatironinstitute
  • License: apache-2.0
  • Language: TypeScript
  • Default Branch: main-v2
  • Homepage:
  • Size: 7.07 MB
Statistics
  • Stars: 59
  • Watchers: 3
  • Forks: 13
  • Open Issues: 44
  • Releases: 1
Created over 2 years ago · Last pushed 4 months ago
Metadata Files
Readme Changelog License

README.md

neurosift (v2)

Neurosift is a browser-based tool designed for the visualization of neuroscience data with a focus on NWB (Neurodata Without Borders) files, and enables interactive exploration of the DANDI Archive, EMBER Archive, and OpenNeuro online repositories.

This branch contains the new (v2) version of neurosift. The previous (v1) version is available on the main branch.

The live application is hosted at https://neurosift.app.

Run locally

If you want to run neurosift on a local file, you can install it via pip and run it locally.

  1. Install neurosift: bash pip install neurosift

  2. Run neurosift locally: bash neurosift view-nwb path-to-local-nwbfile.nwb

For developers

Follow these steps to install and run the app locally in development mode:

  1. Clone the repository: bash git clone <repository-url> cd neurosift

  2. Initialize git submodules and install dependencies: bash git submodule update --init --recursive npm install

Note: The niivue_dist submodule is required for NIFTI file visualization. If you skip initializing submodules, you may encounter errors when trying to view NIFTI files.

  1. Start the development server: bash npm run dev The development server typically runs on http://localhost:5173.

Contributions

Pull requests are welcomed. If you have suggestions, improvements, or bug fixes, please feel free to open a pull request.

Prior to submitting a pull request please be sure that the following commands run successfully:

```bash

Prerequisites:

pip install black

npm install

./devel/check_format.sh npm run build ```

If the check_format.sh fails then you will want to run the following command to format the code:

bash ./devel/format_code.sh

The formatting includes: - Python code formatting using black - TypeScript/JavaScript code formatting using npm scripts

Pre-commit hooks

You can use a pre-commit hook to automatically check format code before each commit.

After cloning the repository:

  1. Install pre-commit: bash pip install pre-commit

  2. Install the git hook scripts: bash pre-commit install

After this setup, code will be automatically checked for formatting when you make a commit via ./devel/format_code.sh.

Example Visualizations

Neurosift Visualization Examples

MCP Tools for Cline

Neurosift provides MCP (Model Context Protocol) tools that can be used with Cline in VSCode to interact with the DANDI archive and explore neuroscience data programmatically. For installation and usage instructions, see docs/mcp-neurosift-tools.md.

License

This project is licensed under the Apache 2.0 License.

Owner

  • Name: Flatiron Institute
  • Login: flatironinstitute
  • Kind: organization
  • Location: New York City

@SimonsFoundation

JOSS Publication

Neurosift: DANDI exploration and NWB visualization in the browser
Published
May 27, 2024
Volume 9, Issue 97, Page 6590
Authors
Jeremy Magland ORCID
Center for Computational Mathematics, Flatiron Institute, United States of America
Jeff Soules ORCID
Center for Computational Mathematics, Flatiron Institute, United States of America
Cody Baker ORCID
CatalystNeuro, United States of America
Benjamin Dichter ORCID
CatalystNeuro, United States of America
Editor
Marcel Stimberg ORCID
Tags
Neurodata Without Borders (NWB) Distributed Archives for Neurophysiology Data Integration (DANDI) neurophysiology data visualization web visualization javascript web browser

GitHub Events

Total
  • Issues event: 184
  • Watch event: 14
  • Issue comment event: 259
  • Push event: 423
  • Gollum event: 2
  • Pull request event: 61
  • Fork event: 7
  • Create event: 13
Last Year
  • Issues event: 184
  • Watch event: 14
  • Issue comment event: 259
  • Push event: 423
  • Gollum event: 2
  • Pull request event: 61
  • Fork event: 7
  • Create event: 13

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 372
  • Total Committers: 4
  • Avg Commits per committer: 93.0
  • Development Distribution Score (DDS): 0.075
Past Year
  • Commits: 372
  • Committers: 4
  • Avg Commits per committer: 93.0
  • Development Distribution Score (DDS): 0.075
Top Committers
Name Email Commits
Jeremy Magland j****d@f****g 344
Ben Dichter b****r@g****m 21
Yaroslav Halchenko d****n@o****m 5
luiz l****r@h****m 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 261
  • Total pull requests: 89
  • Average time to close issues: 2 months
  • Average time to close pull requests: 16 days
  • Total issue authors: 21
  • Total pull request authors: 9
  • Average comments per issue: 2.2
  • Average comments per pull request: 0.87
  • Merged pull requests: 70
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 102
  • Pull requests: 69
  • Average time to close issues: 11 days
  • Average time to close pull requests: 1 day
  • Issue authors: 12
  • Pull request authors: 7
  • Average comments per issue: 1.13
  • Average comments per pull request: 0.88
  • Merged pull requests: 59
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • bendichter (113)
  • magland (74)
  • CodyCBakerPhD (18)
  • pauladkisson (9)
  • weiglszonja (8)
  • yarikoptic (7)
  • rly (6)
  • h-mayorquin (5)
  • kabilar (3)
  • chrisvdt (3)
  • luiztauffer (2)
  • guittari (2)
  • tabedzki (2)
  • alessandratrapani (2)
  • navinfreeze (1)
Pull Request Authors
  • bendichter (44)
  • magland (30)
  • luiztauffer (5)
  • CodyCBakerPhD (4)
  • tabedzki (2)
  • vncntprvst (1)
  • mstimberg (1)
  • yarikoptic (1)
  • aaronkanzer (1)
Top Labels
Issue Labels
ready to implement (13) pending review (3) high priority (2) bug (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 20 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 13
  • Total maintainers: 1
pypi.org: neurosift

Simple utility to view local NWB files using Neurosift

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 20 Last month
Rankings
Dependent packages count: 7.5%
Stargazers count: 13.4%
Downloads: 16.4%
Forks count: 22.9%
Average: 26.0%
Dependent repos count: 69.8%
Maintainers (1)
Last synced: 4 months ago