glin-profanity
Version:
Glin-Profanity is a lightweight and efficient npm package designed to detect and filter profane language in text inputs across multiple languages. Whether you’re building a chat application, a comment section, or any platform where user-generated content
311 lines (310 loc) • 8.03 kB
JSON
{
"name": "glin-profanity",
"version": "3.3.0",
"description": "Glin-Profanity is a lightweight and efficient npm package designed to detect and filter profane language in text inputs across multiple languages. Whether you’re building a chat application, a comment section, or any platform where user-generated content is involved, Glin-Profanity helps you maintain a clean and respectful environment.",
"type": "module",
"main": "dist/index.js",
"module": "dist/index.js",
"types": "dist/index.d.ts",
"exports": {
".": {
"require": {
"types": "./dist/index.d.cts",
"default": "./dist/index.cjs"
},
"import": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
}
},
"./react": {
"require": {
"types": "./dist/react.d.cts",
"default": "./dist/react.cjs"
},
"import": {
"types": "./dist/react.d.ts",
"default": "./dist/react.js"
}
},
"./ml": {
"require": {
"types": "./dist/ml/index.d.cts",
"default": "./dist/ml/index.cjs"
},
"import": {
"types": "./dist/ml/index.d.ts",
"default": "./dist/ml/index.js"
}
},
"./ai": {
"require": {
"types": "./dist/integrations/index.d.cts",
"default": "./dist/integrations/index.cjs"
},
"import": {
"types": "./dist/integrations/index.d.ts",
"default": "./dist/integrations/index.js"
}
},
"./ai/openai": {
"require": {
"types": "./dist/integrations/openai.d.cts",
"default": "./dist/integrations/openai.cjs"
},
"import": {
"types": "./dist/integrations/openai.d.ts",
"default": "./dist/integrations/openai.js"
}
},
"./ai/langchain": {
"require": {
"types": "./dist/integrations/langchain.d.cts",
"default": "./dist/integrations/langchain.cjs"
},
"import": {
"types": "./dist/integrations/langchain.d.ts",
"default": "./dist/integrations/langchain.js"
}
},
"./ai/vercel": {
"require": {
"types": "./dist/integrations/vercel-ai.d.cts",
"default": "./dist/integrations/vercel-ai.cjs"
},
"import": {
"types": "./dist/integrations/vercel-ai.d.ts",
"default": "./dist/integrations/vercel-ai.js"
}
},
"./ai/semantic": {
"require": {
"types": "./dist/integrations/semantic.d.cts",
"default": "./dist/integrations/semantic.cjs"
},
"import": {
"types": "./dist/integrations/semantic.d.ts",
"default": "./dist/integrations/semantic.js"
}
},
"./ml/transformers": {
"require": {
"types": "./dist/ml/transformers.d.cts",
"default": "./dist/ml/transformers.cjs"
},
"import": {
"types": "./dist/ml/transformers.d.ts",
"default": "./dist/ml/transformers.js"
}
},
"./multimodal": {
"require": {
"types": "./dist/multimodal/index.d.cts",
"default": "./dist/multimodal/index.cjs"
},
"import": {
"types": "./dist/multimodal/index.d.ts",
"default": "./dist/multimodal/index.js"
}
},
"./ocr": {
"require": {
"types": "./dist/multimodal/ocr.d.cts",
"default": "./dist/multimodal/ocr.cjs"
},
"import": {
"types": "./dist/multimodal/ocr.d.ts",
"default": "./dist/multimodal/ocr.js"
}
},
"./audio": {
"require": {
"types": "./dist/multimodal/audio.d.cts",
"default": "./dist/multimodal/audio.cjs"
},
"import": {
"types": "./dist/multimodal/audio.d.ts",
"default": "./dist/multimodal/audio.js"
}
},
"./frameworks": {
"require": {
"types": "./dist/frameworks/index.d.cts",
"default": "./dist/frameworks/index.cjs"
},
"import": {
"types": "./dist/frameworks/index.d.ts",
"default": "./dist/frameworks/index.js"
}
},
"./nextjs": {
"require": {
"types": "./dist/frameworks/nextjs.d.cts",
"default": "./dist/frameworks/nextjs.cjs"
},
"import": {
"types": "./dist/frameworks/nextjs.d.ts",
"default": "./dist/frameworks/nextjs.js"
}
}
},
"peerDependencies": {
"react": ">=16.8.0",
"@tensorflow-models/toxicity": ">=1.2.0",
"@tensorflow/tfjs": ">=4.0.0",
"zod": ">=3.0.0",
"openai": ">=4.0.0",
"@langchain/core": ">=0.1.0",
"ai": ">=3.0.0",
"@xenova/transformers": ">=2.0.0",
"tesseract.js": ">=5.0.0"
},
"peerDependenciesMeta": {
"react": {
"optional": true
},
"@tensorflow/tfjs": {
"optional": true
},
"@tensorflow-models/toxicity": {
"optional": true
},
"zod": {
"optional": true
},
"openai": {
"optional": true
},
"@langchain/core": {
"optional": true
},
"ai": {
"optional": true
},
"@xenova/transformers": {
"optional": true
},
"tesseract.js": {
"optional": true
}
},
"files": [
"dist",
"README.md"
],
"scripts": {
"build": "tsup",
"test": "jest",
"test:watch": "jest --watch",
"test:coverage": "jest --coverage",
"test:ci": "jest --ci --coverage --watchAll=false",
"typecheck": "tsc --noEmit",
"lint": "eslint src/**/*.ts",
"lint:fix": "eslint src/**/*.ts --fix",
"benchmark": "npx tsx benchmarks/benchmark.ts",
"semantic-release": "semantic-release"
},
"repository": {
"type": "git",
"url": "https://github.com/GLINCKER/glin-profanity"
},
"homepage": "https://www.glincker.com/tools/glin-profanity",
"sideEffects": false,
"keywords": [
"profanity",
"curse",
"react-profanity",
"glin-profanity",
"glincker",
"glin",
"bad",
"badword",
"profanity-cleaner",
"swearword",
"profanity-filter",
"badword-filter",
"badword-detection",
"badword-detect",
"checker",
"filter",
"detection",
"detect",
"profane",
"profane-language",
"profane-word",
"profane-word-filter",
"profane-word-detection",
"moderation",
"moderate",
"glinr",
"profanity-checker",
"profanity-filter",
"profanity-check",
"profanity-moderation",
"profanity-moderation-tool",
"profanity-moderation-library",
"profanity-moderation-service",
"profanity-moderation-api",
"profanity-moderation-toolkit",
"profanity-moderation-framework",
"profanity-moderation-plugin",
"profanity-moderation-module",
"openai",
"openai-function-calling",
"langchain",
"langchain-tool",
"vercel-ai",
"ai-sdk",
"semantic-analysis",
"embeddings",
"tensorflow",
"tensorflowjs",
"ml",
"machine-learning",
"toxicity",
"toxicity-detection",
"ai",
"neural-network",
"leetspeak",
"unicode",
"homoglyph",
"transformers",
"transformers-js",
"huggingface",
"onnx",
"ocr",
"tesseract",
"image-moderation",
"audio-moderation",
"speech-to-text",
"whisper",
"nextjs",
"nextjs-middleware",
"server-actions",
"content-moderation",
"multimodal"
],
"author": "glinr",
"license": "ISC",
"devDependencies": {
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/git": "^10.0.1",
"@semantic-release/github": "^11.0.3",
"@semantic-release/npm": "^12.0.2",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "^6.6.4",
"@testing-library/react": "^16.3.0",
"@types/jest": "^30.0.0",
"@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
"jest": "^30.0.5",
"jest-environment-jsdom": "^30.0.5",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"semantic-release": "^24.2.7",
"ts-jest": "^29.4.0",
"tsup": "^8.2.3",
"tsx": "^4.21.0",
"typescript": "^5.8.3"
}
}