PyWavelets-compatible Rust for research-to-runtime paths.

FerroWave is built for teams that prototype with PyWavelets but need Rust performance and deployment discipline.

Why this needs production signal processing

!

Small differences in coefficient lengths or boundary handling can invalidate a feature pipeline.

!

Rewriting research transforms by hand creates drift between notebooks and production.

!

Production teams need a clear equivalence story before replacing Python runtime code.

How FerroWave handles it

01

Prototype in Python

Research teams can explore transforms and features using familiar scientific Python workflows.

02

Port to Rust

FerroWave provides Rust implementations pinned to reference behavior where the contract is stable.

03

Validate outputs

Reference tests and equivalence targets help catch drift before deployment.

What makes this FerroWave-shaped

The public site states numerical equivalence to PyWavelets at 1e-10.

Tests are pinned to PyWavelets and scipy.

Rust performance is surfaced alongside reference equivalence.

Common concerns

Does compatible mean byte-for-byte identical everywhere?

No. The site frames equivalence around numerical behavior and pinned reference contracts, not a promise about every possible runtime artifact.

Why not keep PyWavelets in production?

Some systems need Rust deployment, lower latency, stronger integration, or reduced Python runtime surface.