Metadata-Version: 2.1
Name: django-hide
Version: 0.0.4.1
Summary: A Django package to obscure Django applications from detection tools like Wappalyzer by encrypting the CSRF token.
Home-page: https://github.com/metemaddar/django_hide
Author: Mohammad Etemaddar
Author-email: mohammad.etemaddar@gmail.com
Project-URL: Documentation, https://github.com/metemaddar/django_hide/blob/main/README.md
Project-URL: Source, https://github.com/metemaddar/django_hide
Project-URL: Tracker, https://github.com/metemaddar/django_hide/issues
Keywords: django security wappalyzer hide csrf
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Security
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Django>=3.2

# Django Hide

![Django CI](https://github.com/metemaddar/django_hide/actions/workflows/django.yml/badge.svg)

<p align="center">
  <img src="https://raw.githubusercontent.com/metemaddar/django_hide/master/docs/logo.svg" alt="Logo"/>
</p>

**Django Hide** is a Django package designed to obscure your application's programming languages and frameworks from detection tools like Wappalyzer. By encrypting the CSRF token tag, this package helps prevent Wappalyzer and similar tools from identifying your application as a Django project.

## Requirements

### Python
Supports Python versions 3.6 and later, in line with Django’s compatibility. For more details on Python versions compatible with Django, see [What Python version can I use with Django?](https://docs.djangoproject.com/en/stable/faq/install/#what-python-can-i-use-with-django)

## Installation

Install `django-hide` and its dependencies from [PyPI](https://pypi.python.org/pypi/django-hide) using `pip`:

```shell
pip install django-hide
```

## Setup

1. Add `django_hide` to your `INSTALLED_APPS`:

    ```python
    INSTALLED_APPS = (
        ...
        'django_hide',
    )
    ```

2. Add `django_hide` middleware to your `MIDDLEWARE`:

    ```python
    MIDDLEWARE = (
        ...
        'django_hide.middleware.CSRFHIDEMiddleware',
    )
    ```

3. Load the `{% load django_hide %}` template tag in your templates:

    ```html
    {% extends "base.html" %}
    {% load django_hide %}
    ```

4. Replace `{% csrf_token %}` with `{% h_csrf_token %}` in your forms:

    ```html
    <form method="post" action="{% url 'action' %}" 
          onsubmit="return confirm('Are you sure?')">
        
        {% h_csrf_token %}

        <button class="btn btn-sm btn-warning"
                type="submit">{% "Submit" %}</button>
    </form>
    ```

## Note

To ensure your Django application remains hidden, clear Wappalyzer cookies.
