skillfed

attoworld

Tools from the Attosecond science group at the Max Planck Institute of Quantum Optics

attoworld v2026.2.8 162.7K downloads/30d#10,591 on PyPI2
License unclear Active released

What it is and what it does

Attoworld is a Python library bundling research tools from the Attosecond science group at the Max Planck Institute of Quantum Optics. It organizes functionality into submodules for data handling (various lab data formats), numerical computation, waveform and pulse processing, spectrum analysis, plotting with consistent styling, and a Rust-backed component for performance-critical operations. The package depends on established scientific Python libraries: numpy, scipy, matplotlib, pandas, h5py, and pywavelets.

The package is explicitly in active development and not yet fully validated. It is designed to share code within the research group and potentially with the broader community, but the developers warn that things may change and should be used at your own risk. It supports Python 3.8 and later, with pre-built wheels for most common Linux, macOS, and Windows architectures.

Use it for:

  • Processing and analyzing attosecond-scale waveforms and pulses in experimental physics workflows.
  • Reading, transforming, and managing specialized data formats used across Max Planck attosecond labs.
  • Computing numerical operations on spectral and temporal data with performance-critical sections accelerated by Rust.
  • Generating publication-ready plots with consistent styling for attosecond physics research.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Attoworld provides data handling, numerical processing, waveform analysis, and visualization tools developed by the Attosecond science group at the Max Planck Institute of Quantum Optics.

Yes, with conditions. Install if you work in attosecond physics or collaborate with the Max Planck Attoworld group and can tolerate active development. The package is actively maintained, has no known vulnerabilities, and offers a curated toolkit for the domain. However, the unclear license status and explicit warning that it is still in building phase and not yet validated mean you should review the repository license before production use and treat the API as subject to change.

Install

attoworld on PyPI

pip

pip install attoworld

uv

uv add attoworld

poetry

poetry add attoworld

Installing attoworld

Before you install

Medium install friction due to 8 runtime dependencies including numpy, scipy, matplotlib, h5py, pandas, and pywavelets. The package is actively maintained with recent releases, though it explicitly states it is still in building phase and things may change.

License in practice

License status is unclear—no SPDX identifier or raw license text is declared. Before production use, verify the actual license terms with the repository maintainers.

Quickstart

pip install attoworld
import attoworld
# Access submodules: attoworld.data, attoworld.numeric, attoworld.plot, attoworld.wave, attoworld.spectrum

Requires Python >=3.8. The package includes Rust components compiled via Maturin; pre-built wheels are available for common platforms (Linux, macOS, Windows) but compilation may be needed on unsupported architectures.

Verify before relying

  • Stability guarantees or timeline for moving out of 'building phase' and validating core functionality.
  • Whether the 'personal' submodule is intended for end-user consumption or internal use only.
  • Specific use cases or domains where the package has been validated in production.

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.8)
Install friction medium — platform-specific wheel
Runtime dependencies 8 — numpy, scipy, matplotlib, pyyaml, marimo, h5py, pandas, pywavelets
Maintenance actively maintained — 50 days since the last release
Last repo commit
First released
Downloads 162,715/month — #10,591 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: attoworld-2026.2.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; attoworld-2026.2.8-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; attoworld-2026.2.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl; attoworld-2026.2.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; attoworld-2026.2.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl; attoworld-2026.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; attoworld-2026.2.8-cp310-cp310-musllinux_1_2_aarch64.whl; attoworld-2026.2.8-cp310-cp310-musllinux_1_2_armv7l.whl; attoworld-2026.2.8-cp310-cp310-musllinux_1_2_i686.whl; attoworld-2026.2.8-cp310-cp310-musllinux_1_2_x86_64.whl; attoworld-2026.2.8-cp310-cp310-win_amd64.whl; attoworld-2026.2.8-cp311-cp311-macosx_10_12_x86_64.whl; attoworld-2026.2.8-cp311-cp311-macosx_11_0_arm64.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl; attoworld-2026.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; attoworld-2026.2.8-cp311-cp311-musllinux_1_2_aarch64.whl

Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: Rust

Tags

attosecond physics toolswaveform and pulse processingscientific data handlingspectrum analysisnumerical physics library
attosecond-physicswaveform-analysisresearch-tools

More Scientific/Engineering packages