Metadata-Version: 2.4
Name: django-healthkit
Version: 0.1.0
Summary: Health checks and monitoring toolkit for Django applications.
Author: CyberHuginn
License: MIT
Project-URL: Homepage, https://github.com/cyberhuginn/django-healthkit
Project-URL: Repository, https://github.com/cyberhuginn/django-healthkit
Project-URL: Issues, https://github.com/cyberhuginn/django-healthkit/issues
Keywords: django,health,monitoring,healthcheck,observability
Classifier: Framework :: Django
Classifier: Framework :: Django :: 5.2
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Django>=5.2
Dynamic: license-file

# django-healthkit

Lightweight and extensible health checks for Django applications.

`django-healthkit` helps you expose health check endpoints for your
Django services so they can be monitored by load balancers, container
platforms, and monitoring systems.

## Features

-   Lightweight and easy to integrate
-   Health check endpoint
-   Database health checks
-   Cache health checks
-   Storage health checks
-   Custom health checks
-   Extensible architecture
-   Docker & Kubernetes friendly
-   Ready for production
-   Fully typed and Pythonic

## Installation

``` bash
pip install django-healthkit
```

## Quick Start

1.  Install the package.
2.  Add it to `INSTALLED_APPS`.
``` python
INSTALLED_APPS = [
    ...
    'django-healthkit',
    ...
]
```
4. Add to `Settings.py`:
```python
HEALTHKIT = {
    "CHECKS": [
        "django_healthkit.checks.database.DatabaseCheck",
        "django_healthkit.checks.cache.CacheCheck",
    ],
}
```
5. Include the health check URL.
``` python
from django.urls import path

from django_healthkit.views import HealthView

urlpatterns = [
    ...
    path("health/", HealthView.as_view(), name="health"),
    ...
]

```
4.  Visit the endpoint to verify your application's health.

## Example Response

``` json
{
  "healthy": true,
  "checks": [
    {
      "name": "database",
      "healthy": true,
      "message": "Database is healthy.",
      "latency": 0.49
    },
    {
      "name": "cache",
      "healthy": true,
      "message": "Cache is healthy.",
      "latency": 0.57
    }
  ]
}
```

## Why django-healthkit?

Modern applications need a simple way to expose their health status for
deployment platforms and monitoring tools.

django-healthkit provides a clean, extensible foundation that lets you
add built-in and custom health checks without unnecessary complexity.

## Roadmap

-   Built-in health checks
-   Custom check API
-   Async health checks
-   Detailed check reports
-   Prometheus integration
-   OpenTelemetry support

## Contributing

Contributions, issues, and feature requests are welcome.

## License

MIT
