Metadata-Version: 2.4
Name: jamlib
Version: 1.1.4
Summary: Simple and univirsal library for authorization.
Author-email: Makridenko Adrian <adrianmakridenko@duck.com>
License: MIT License
Project-URL: Homepage, https://jam.makridenko.ru
Project-URL: Repository, https://github.com/lyaguxafrog/jam
Project-URL: Issues, https://github.com/lyaguxafrog/jam/issues
Project-URL: Changelog, https://github.com/lyaguxafrog/jam/releases
Keywords: auth,backend,jwt
Requires-Python: >=3.13
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: pycryptodome<4.0.0,>=3.21.0
Requires-Dist: cryptography<45.0.0,>=44.0.2
Provides-Extra: json-lists
Requires-Dist: tinydb>=4.8.2; extra == "json-lists"
Provides-Extra: redis-lists
Requires-Dist: redis>=5.2.1; extra == "redis-lists"
Dynamic: license-file

# Jam

![logo](https://github.com/lyaguxafrog/jam/blob/master/docs/assets/h_logo_n_title.png?raw=true)

![Static Badge](https://img.shields.io/badge/Python-3.13-blue?logo=python&logoColor=white)
![PyPI - Version](https://img.shields.io/pypi/v/jamlib)
![tests](https://github.com/lyaguxafrog/jam/actions/workflows/run-tests.yml/badge.svg)
![GitHub License](https://img.shields.io/github/license/lyaguxafrog/jam)

Documentation: [jam.makridenko.ru](https://jam.makridenko.ru)

## Install
```bash
pip install jamlib
```

## Getting start
```python
# -*- coding: utf-8 -*-

from jam import Jam
from jam.utils import make_jwt_config

config = make_jwt_config(
    alg="HS256",
    secret_key="some-key",
    expire=36000,
)

jam = Jam(auth_type="jwt", config=config)
token = jam.gen_jwt_token({"user_id": 1})
```

## Roadmap
![Roadmap](https://github.com/lyaguxafrog/jam/blob/master/docs/assets/roadmap.png?raw=true)

&copy; [Adrian Makridenko](https://github.com/lyaguxafrog) 2025
