# django-gesha

[![Test](https://github.com/ely-as/django-gesha/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/ely-as/django-gesha/actions/workflows/test.yml)
[![Version](https://img.shields.io/pypi/v/django-gesha)](https://pypi.org/project/django-gesha/)
![Python](https://img.shields.io/pypi/pyversions/django-gesha)
![Django](https://img.shields.io/pypi/djversions/django-gesha)


[**Documentation**](https://django-gesha.readthedocs.io/en/latest/)
**&nbsp;•&nbsp;**
[**Issue Tracker**](https://github.com/ely-as/django-gesha/issues)
**&nbsp;•&nbsp;**
[**Source**](https://github.com/ely-as/django-gesha)

---

JavaScript utilities for [Django](https://www.djangoproject.com/) projects.

---

**Features:**

  - [Add context](https://django-gesha.readthedocs.io/en/latest/user_guide/#add-context)
    in Django views to be used in JavaScript functions.
  - [Reverse URLs](https://django-gesha.readthedocs.io/en/latest/user_guide/#reverse-urls)
    natively in JavaScript (equivalent to `reverse()` in Python and `{% url %}` in
    templates).
  - Written in TypeScript and fully-typed Python.

---

## Getting started

To install and set up **django-gesha** in an existing Django project, see:

  - [Installation](https://django-gesha.readthedocs.io/en/latest/installation/)
  - [User Guide](https://django-gesha.readthedocs.io/en/latest/user_guide/)

Starting a new Django project? Consider using
[**django-gesha-template**](https://github.com/ely-as/django-gesha-template), which is
pre-configured with **django-gesha** and a pipeline for TypeScript integration.

## Contributing

See [Contributing](https://django-gesha.readthedocs.io/en/latest/contributing/).

## License

[MIT](https://github.com/ely-as/django-gesha/blob/main/LICENSE).
