Skip to main content

Utilities for neuralib

Project description

neuralib-utils

Core utilities and foundational tools for the neuralib ecosystem, providing I/O operations, data manipulation, type definitions, visualization helpers, and common infrastructure for neuroscience research workflows.

Overview

neuralib-utils is the foundational package for neuralib, providing essential utilities that other neuralib packages depend on. It includes:

  • File I/O: Efficient HDF5 lazy loading, JSON/CSV handling, dataset management
  • Type System: Unified type aliases supporting both pandas and polars DataFrames
  • Utilities: Logging, colored output, DataFrame operations, GPU monitoring, profiling
  • Plotting: Publication-quality plotting tools (PSTH, Venn diagrams, colormaps)
  • Dashboard: Bokeh-based web UI framework for interactive data visualization
  • Image Utilities: Array manipulation, labeling, color management, normalization
  • External Tools: Google Sheets and Slack integrations

This package serves as the core dependency for all other neuralib packages (neuralib-atlas, neuralib-imaging, etc.).

Installation

From PyPI

pip install neuralib-utils

With Optional Dependencies

# Dashboard support (Bokeh)
pip install neuralib-utils[dashboard]

# Plotting support (matplotlib, seaborn)
pip install neuralib-utils[plot]

# Optional tools (Google Sheets, Slack, GPU monitoring)
pip install neuralib-utils[opt]

# All features
pip install neuralib-utils[all]

From Source (uv recommended)

git clone https://github.com/ytsimon2004/neuralib2.git
cd neuralib2/packages/neuralib-utils
uv pip install -e .        # Basic installation
uv pip install -e ".[all]" # With all features

Requirements

  • Python 3.11 or 3.12
  • Core dependencies: numpy, scipy, pandas, polars, h5py, rich, tqdm
  • See pyproject.toml for full dependency list

Documentation

Related Packages

neuralib-utils is the foundation for the neuralib ecosystem:

  • neuralib-atlas: Brain atlas tools and hierarchical representations of mouse brain anatomy
  • neuralib-imaging: Cellular imaging and widefield imaging tools
  • neuralib-parser: Data parsers for segmentation, morphology, Suite2p, Scanbox, CZI, StarDist
  • neuralib-metric: Analysis metrics and computational tools

License

BSD 3-Clause License. See LICENSE file for details.

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request with clear description

For bug reports and feature requests, use the GitHub issue tracker.

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

neuralib_utils-0.7.2.tar.gz (85.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuralib_utils-0.7.2-py3-none-any.whl (101.8 kB view details)

Uploaded Python 3

File details

Details for the file neuralib_utils-0.7.2.tar.gz.

File metadata

  • Download URL: neuralib_utils-0.7.2.tar.gz
  • Upload date:
  • Size: 85.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for neuralib_utils-0.7.2.tar.gz
Algorithm Hash digest
SHA256 733e3db4e7537931fe3a89f8433f12b1f3b80277b60d2810e0f75e4eb5ab2211
MD5 b4a3aa1aed954b63a43ea8ebc5b417e1
BLAKE2b-256 d6a046a93b39150900085ec2e631e946985c28ed2cc954115a885bb24c350572

See more details on using hashes here.

File details

Details for the file neuralib_utils-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: neuralib_utils-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 101.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for neuralib_utils-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6f74ed00df105f5871511b2430876b5448f27dc2392d3eb48c4224de11c7d2f0
MD5 fc89e1e97b0d20f0de0023a913ec4b98
BLAKE2b-256 58000b473fea7a1b57662f54fd80979fe03b7b4db917005812d358c8ceeca906

See more details on using hashes here.

Supported by

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