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.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-py3-none-any.whl (141.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jamlib-3.2.0.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.tar.gz
Algorithm Hash digest
SHA256 1a055bccce6ee889b3de1c5abe214e3d162185d9c0f1f03724cde28ef2591463
MD5 cb62a278d95a169a9b3acd354eb0f91a
BLAKE2b-256 aafe4d2a05d174d46fff1564ac93e63f3b794472b53ea91b5ff359778868d34b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jamlib-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 141.2 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-py3-none-any.whl
Algorithm Hash digest
SHA256 0629f0dd91abacb433b6b9de2defb8ef4e5e0dc2959d99ec04686264d2e5e1ff
MD5 a2024a0d6b424a2c1cfcea14d6b4c2bd
BLAKE2b-256 ef287413360c04187fc6c9d85e48b5680ef256aa6c41db25f6e05ff26fc076ab

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