Skip to content

Integrations

Add Profanity Kit to common validation libraries.

Updated View as Markdown

Zod

import { z } from "zod";
import { createDetector } from "profanity-kit";

const detector = createDetector();
const cleanComment = z.string().refine(detector.isClean, {
  message: "Please remove prohibited language.",
});

Valibot

import * as v from "valibot";
import { createDetector } from "profanity-kit";

const detector = createDetector();
const cleanComment = v.pipe(
  v.string(),
  v.check(detector.isClean, "Please remove prohibited language.")
);

Yup

import * as yup from "yup";
import { createDetector } from "profanity-kit";

const detector = createDetector();
const cleanComment = yup
  .string()
  .test(
    "clean-language",
    "Please remove prohibited language.",
    detector.isClean
  );

The detector methods are callback-safe, so each validator can call detector.isClean directly without binding a this context.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close