mask-pii for Hare

Hare implementation of mask-pii for masking email and phone PII in logs and data pipelines.

Email masking

Masks local parts while preserving domain visibility.

Phone masking

Masks sensitive digits while keeping format and suffix visibility.

Builder-style API

Enable email/phone masking and mask character explicitly before processing.

Install and start

Use the tagged source checkout while the Hare Project Library package is planned, load the Hare API, and run the minimal example below. It enables both masking rules explicitly and records the expected output.

Installation

git clone --branch v0.2.0 --depth 1 https://github.com/finitefield-org/mask-pii.git

Usage

main.ha
use fmt;
use maskpii;

export fn main() void = {
	let m = maskpii::new();
	maskpii::mask_emails(&m);
	maskpii::mask_phones(&m);
	maskpii::with_mask_char(&m, '#');

	let input = "Contact: alice@example.com or 090-1234-5678.";
	let output = maskpii::process(&m, input)!;
	defer free(output);

	fmt::println(output);
	// Output: "Contact: a####@example.com or ###-####-5678."
};
Note

Please check the README for exact package ecosystem details and API examples for this language.