Sharon Hart 1c44a0fded docs: Material for MkDocs migration to Zensical (#2102)
* docs: migrate documentation site from MkDocs to Zensical

Replace the Material for MkDocs toolchain with Zensical (its successor),
leaving no parallel MkDocs build behind.

- release-docs.yml builds with scripts/zensical_build.py and publishes the
  generated ./site to GitHub Pages (was: pip install requirements-docs.txt
  + mkdocs gh-deploy).
- requirements-docs.txt pins zensical + nbconvert + mkdocstrings-python in
  place of mkdocs / mkdocs-material / mkdocs-jupyter.
- scripts/zensical_build.py pre-converts the notebook samples with nbconvert
  (Zensical has no MkDocs plugin lifecycle, so mkdocs-jupyter never runs) and
  emits a generated zensical.yml from mkdocs.yml, which Zensical reads natively.
- mkdocs.yml: drop the now-unused mkdocs-jupyter plugin (the build script
  handles notebooks); the Material-compatible theme, custom_dir overrides
  (Microsoft Clarity + cookie consent) and mkdocstrings API reference are all
  honored by Zensical.
- docs/stylesheets/extra.css: style the nbconvert-rendered notebook output.
- NOTICE: attribute Zensical (MIT) and nbconvert (BSD-3 Clause); drop the
  MkDocs and mkdocs-jupyter notices, keep mkdocstrings and pymdown-extensions.

Verified locally: 104 pages build, all 18 sample notebooks render, the API
reference and brand styling are intact.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: improve Zensical mobile homepage

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Omri Mendels <omri374@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-28 11:05:34 +03:00
2025-11-11 07:56:55 +02:00
2018-10-10 23:51:43 +03:00
2025-09-28 08:44:04 +03:00
2026-06-28 10:27:33 +03:00
2026-06-28 10:27:33 +03:00
2026-06-28 10:27:33 +03:00

Presidio - Data Protection and De-identification SDK

📣 Presidio is moving to a new home! Read more here 📣

Context aware, pluggable and customizable PII de-identification service for text and images.


Build Status MIT license Release OpenSSF Best Practices PyPI pyversions Discord

Component Downloads Coverage
Presidio Analyzer Pypi Downloads Coverage
Presidio Anonymizer Pypi Downloads Coverage
Presidio Image-Redactor Pypi Downloads Coverage
Presidio Structured Pypi Downloads Coverage

What is Presidio

Presidio (Origin from Latin praesidium protection, garrison) helps to ensure sensitive data is properly managed and governed. It provides fast identification and anonymization modules for private entities in text such as credit card numbers, names, locations, social security numbers, bitcoin wallets, US phone numbers, financial data and more.

Presidio demo gif


📘 Full documentation

📣 Project transition update

Frequently Asked Questions

💭 Demo

🛫 Examples


Goals

  • Allow organizations to preserve privacy in a simpler way by democratizing de-identification technologies and introducing transparency in decisions.
  • Embrace extensibility and customizability to a specific business need.
  • Facilitate both fully automated and semi-automated PII de-identification flows on multiple platforms.

Main features

  1. Predefined or custom PII recognizers leveraging Named Entity Recognition, regular expressions, rule based logic and checksum with relevant context in multiple languages.
  2. Options for connecting to external PII detection models.
  3. Multiple usage options, from Python or PySpark workloads through Docker to Kubernetes.
  4. Customizability in PII identification and de-identification.
  5. Module for redacting PII text in images (standard image types and DICOM medical images).

⚠️ Presidio can help identify sensitive/PII data in un/structured text. However, because it is using automated detection mechanisms, there is no guarantee that Presidio will find all sensitive information. Consequently, additional systems and protections should be employed.

Installing Presidio

  1. Using pip
  2. Using Docker
  3. From source
  4. Migrating from V1 to V2

Running Presidio

  1. Getting started
  2. Setting up a development environment
  3. PII de-identification in text
  4. PII de-identification in images
  5. Usage samples and example deployments

Support

Contributing

For details on contributing to this repository, see the contributing guide.

This project has adopted the Contributor Covenant Code of Conduct.

Contributors

Languages
Python 99.5%
HTML 0.2%
Dockerfile 0.2%