Skip to main content

Neurotech Development Kit: an open-source software library designed to enhance accessibility to cutting-edge neurotechnology

Project description

Welcome to Neurotech Development Kit

Linting Tests Gallery examples

The Neurotech Development Kit (NDK) is an open-source, community-driven software library designed to lower the barrier of entry to the next generation of neurotechnology for current researchers and companies. It also enables software developers without access to hardware and human subjects to solve open problems in the field. The initial release of NDK provides support for transcranial focused ultrasound stimulation, along with comprehensive documentation, API flexibility, and 2D/3D visualizations. Future areas of interest may include photoacoustic and optical whole-brain imaging.

As a community-driven project, we encourage you to contribute code, feedback, and features to help accelerate the development of transformative neurotechnology.

Simulation

Check out the NDK documentation page.

Running

Docker

You can run neurotechdevkit inside a docker container with just a couple of steps:

  1. Install docker

  2. Run the following command:

    docker run -p 8888:8888 -it ghcr.io/agencyenterprise/neurotechdevkit:latest
    

    The command above will start a Jupyter notebook server with example notebooks you can use to explore neurotechdevkit. Use the printed URL to open it in your browser or connect to it using your IDE.

    All changes you make to these files will be lost once you stop the docker container.

Note:

You can have persisting Jupyter notebooks by running

docker run -p 8888:8888  -v $(pwd)/notebooks:/ndk/notebooks -it ghcr.io/agencyenterprise/neurotechdevkit:latest

The command above will create a folder notebooks in your current directory where you can put your jupyter notebooks.

We recommend downloading the .zip file with example notebooks from this link, and extracting it into your local notebooks folder so you can access them from the docker.

Local installation

To install and run neurotechdevkit locally check the installation page.

Usage

import neurotechdevkit as ndk

scenario = ndk.scenarios.built_in.Scenario0()
scenario.make_grid()
scenario.compile_problem()
result = scenario.simulate_steady_state()
result.render_steady_state_amplitudes(show_material_outlines=False)

Simulation

Acknowledgements

Thanks to Fred Ehrsam for supporting this project, Quintin Frerichs and Milan Cvitkovic for providing direction, and to Sumner Norman for his ultrasound and neuroscience expertise. Thanks to Stride for facilitating ultrasound simulations and providing an MIT license for usage within NDK, Devito for providing the backend solver, Napari for great 3D visualization, and to Jean-Francois Aubry, et al. for the basis of the simulation scenarios.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neurotechdevkit-0.6.10.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

neurotechdevkit-0.6.10-py3-none-any.whl (2.2 MB view details)

Uploaded Python 3

File details

Details for the file neurotechdevkit-0.6.10.tar.gz.

File metadata

  • Download URL: neurotechdevkit-0.6.10.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.9 Linux/6.5.0-1024-azure

File hashes

Hashes for neurotechdevkit-0.6.10.tar.gz
Algorithm Hash digest
SHA256 6aa5b0ab2fb262209788b91555ad8c00047f270c950beab7054d9f18c3b3aff0
MD5 25075a1d845cdba512732e0b4b414a1d
BLAKE2b-256 1a9293510f0624836c30b5ca0f0cdbcadefd57a57efa3cd164f3f9fe20397baa

See more details on using hashes here.

File details

Details for the file neurotechdevkit-0.6.10-py3-none-any.whl.

File metadata

  • Download URL: neurotechdevkit-0.6.10-py3-none-any.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.9 Linux/6.5.0-1024-azure

File hashes

Hashes for neurotechdevkit-0.6.10-py3-none-any.whl
Algorithm Hash digest
SHA256 c3465c7d59166099f5887315beb9ff6fa7d4231b3decf1c02b9375df6a1ceb42
MD5 4752d0f49d45c24220e9c9b54a7fb465
BLAKE2b-256 6868eaa12542b4355328c7323981ba2b2c523b84a2b7b3a8d182fca4aa2d7941

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page