Skip to main content

Open-source Python library for intelligent harm detection and linguistic analysis in text

Project description

Reveal

An open-source Python library for intelligent harm detection and linguistic analysis in text.

Reveal combines Natural Language Processing, linguistic analysis, and cryptanalysis to identify harmful, coded, or anomalous language in text — helping researchers, platform moderators, and public safety professionals surface signals that standard tools miss.

What Reveal Detects

  • Propaganda and persuasion techniques (22 categories)
  • Grooming and predatory language
  • Self-harm coded language
  • Help signals from victims of abuse or bullying
  • Geographic location indicators
  • Emotional distress and sentiment
  • Manipulative and accusatory tone
  • Passive voice and agency obscuring
  • Point of view shifts
  • Shannon entropy anomalies
  • Unusual n-gram sequences
  • Statistically anomalous words

Installation

pip install reveal-nlp

Quick Start

from reveal.reasoning.reporter import analyze

text = "I feel so alone and trapped. Please someone help me."
result = analyze(text, fmt='text')
print(result)

Output formats

# Dictionary output for programmatic use
result = analyze(text)

# Formatted text report for human reading
result = analyze(text, fmt='text')

Project Structure

reveal/
├── harm/           # Harm detection, sentiment, reporting
├── linguistic/     # Voice, tone, POV analysis
├── cryptanalysis/  # Entropy, n-grams, anomaly detection
├── reasoning/      # Unified scoring and reporting
└── dictionaries/   # Word lists (JSON, community editable)

Contributing

Reveal is open source and actively seeking contributors — especially for expanding and validating the word lists in the dictionaries/ folder. No coding required to contribute word lists.

See docs/contributing.md for guidelines.

License

MIT License. See LICENSE for details.

Disclaimer

Reveal is a research and analysis tool. Word lists require ongoing community validation. Results should be interpreted by qualified professionals in appropriate contexts.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reveal_nlp-0.4.0.tar.gz (57.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reveal_nlp-0.4.0-py3-none-any.whl (49.9 kB view details)

Uploaded Python 3

File details

Details for the file reveal_nlp-0.4.0.tar.gz.

File metadata

  • Download URL: reveal_nlp-0.4.0.tar.gz
  • Upload date:
  • Size: 57.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for reveal_nlp-0.4.0.tar.gz
Algorithm Hash digest
SHA256 ae2cda0ad54f1e8b958a3363bf43f9273b5f24dbb9c072cadb9b595c16ee4877
MD5 1ab9bdd09302747ca0cc44aef4b2a53a
BLAKE2b-256 2865d0865ab5ab601f99a318c37e0acfe5c2d5620559c6d6ecd146642bf5c573

See more details on using hashes here.

File details

Details for the file reveal_nlp-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: reveal_nlp-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 49.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for reveal_nlp-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 beb361846ae782fbd08db8904aa7b180f5a36b10f87ed1f36e4d7f53ee1b9090
MD5 a8ab8dd6ee229af5dd155148b994359b
BLAKE2b-256 24592f51f8c19e7d5273cd7fa3e03fc3989fa495f52353ffaabe83cb0c01e94f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page