murmurs

Crates.iomurmurs
lib.rsmurmurs
version1.0.5
created_at2025-06-12 09:22:30.943613+00
updated_at2025-06-12 09:47:50.911522+00
description🫆 A reliable and production-ready implementation of the Murmur3 hash function in Rust
homepagehttps://github.com/owengombas/murmurs
repositoryhttps://github.com/owengombas/murmurs
max_upload_size
id1709614
size13,536
Owen Gombas (owengombas)

documentation

README

🫆 murmurs: A Reliable Murmur3 Hash in Rust

murmurs provides a reliable and production-ready implementation of the Murmur3 hash function, faithfully translated from the original C++ reference and usable in the same way.

The core logic resides in src/murmur3.rs, and its correctness is verified against the latest version of the official smhasher implementation through tests using C FFI bindings.

📦 Installation

Add the following to your Cargo.toml:

[dependencies]
murmurs = "1.0" # or the latest published version

🚀 Usage

use murmurs::murmur3_x86_32;

fn main() {
    let hash = murmur3_x86_32(b"hello world", 0);
    println!("{}", hash);
}

Then run:

cargo run

✅ Testing

The implementation is automatically tested against the reference C++ implementation from smhasher using FFI bindings.

To run the tests:

cargo test

🔒 Status

  • ✅ Verified against the original MurmurHash3.cpp
  • ✅ Consistent 32-bit and 128-bit output
  • ✅ Portable and deterministic
  • ✅ Can be used the same way as the C++ reference
Commit count: 23

cargo fmt