mask-pii for Odin

Odin 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

Load the Odin implementation from the tagged source checkout 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.odin
package main

import (
    "core:fmt"
    "mask_pii"
)

main :: proc() {
    masker := mask_pii.new()
    masker = mask_pii.mask_emails(masker)
    masker = mask_pii.mask_phones(masker)
    masker = mask_pii.with_mask_char(masker, '#')

    input := "Contact: alice@example.com or 090-1234-5678."
    output := mask_pii.process(masker, input)

    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.