Skip to main content

Simple and universal library for authorization.

Project description

Jam

logo

Python Version PyPI - Version PyPI Downloads tests Ask DeepWiki GitHub License

Install

pip install jamlib

Quick example

from jam import Jam

jam = Jam(config="config.toml")

jwt = jam.jwt_encode(payload={"user": 1})
session_id = jam.session_create(session_key="username", data={"user": 1})
otp_code = jam.otp_code(secret="3DB7FOAOFBCI3WFDRE7EPF43CA")

Why Jam?

Jam is a library that provides the most popular AUTH* mechanisms right out of the box.

Framework integrations

Jam provides ready-to-use integrations for the most popular frameworks:

Each integration offers built-in middleware or plugin support for JWT and session-based authentication.

Why choose Jam?

Jam supports many authentication methods out of the box with minimal dependencies. Here is a comparison with other libraries:

Features / Library Jam Authx PyJWT AuthLib OTP Auth
JOSE ❌ only JWT ❌ only JWT
JWT black/white lists
PASETO
Server side sessions
OTP
OAuth2
Flexible config
Modularity

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jamlib-3.2.0.post0.tar.gz (94.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jamlib-3.2.0.post0-py3-none-any.whl (141.3 kB view details)

Uploaded Python 3

File details

Details for the file jamlib-3.2.0.post0.tar.gz.

File metadata

  • Download URL: jamlib-3.2.0.post0.tar.gz
  • Upload date:
  • Size: 94.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for jamlib-3.2.0.post0.tar.gz
Algorithm Hash digest
SHA256 5960b9a8e533862a20b9026ef4f96540a4f99cd38b97126be16d7b93755542c8
MD5 bf16ff28c6721eaae10e73d374e58f0e
BLAKE2b-256 c82753e3d9723f97a627d6a32f041f9a6bef9ebb434120ee3cf56e5cc4a3c180

See more details on using hashes here.

File details

Details for the file jamlib-3.2.0.post0-py3-none-any.whl.

File metadata

  • Download URL: jamlib-3.2.0.post0-py3-none-any.whl
  • Upload date:
  • Size: 141.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for jamlib-3.2.0.post0-py3-none-any.whl
Algorithm Hash digest
SHA256 5efc498469f304d07f53145ef1a2ac8571357c7340922df568f51ab899bc5a28
MD5 703d2589f84726c573e8e25013734a9d
BLAKE2b-256 44bf3704dea07e02936aabb0ab7055d9ea154e953860e8cd658b961798ac0f3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page