Metadata-Version: 2.1
Name: oidc-client
Version: 0.1.2
Summary: A pure-Python OpenID Connect client
Home-page: https://gitlab.com/lzinsou/oidc-client
Keywords: openid,oidc,oauth,oauth2
Author: Loris Zinsou
Author-email: lzinsou@proton.me
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Internet :: WWW/HTTP
Requires-Dist: toml (>=0.10.2,<0.11.0); python_version < "3.11"
Project-URL: Repository, https://gitlab.com/lzinsou/oidc-client
Description-Content-Type: text/markdown

OIDC Client
===========

A pure-Python OpenID Connect client supporting OAuth 2.1 authorization flows, built for Python 3.10+ with minimal dependencies.

OAuth 2.1 authorization flows include:
- the **authorization code** flow, for interactive user login;
- the **client credentials** flow, for confidential machine-to-machine communication.

This OIDC Client supports reading configuration profiles from a `pyproject.toml` file.


Requirements
------------

Python 3.10+



Installation
------------

```console
pip install oidc-client
```


Configuration
-------------

To enable interactive login for your project, add the following to your `pyproject.toml`:
```toml
[tool.oidc]
issuer = "https://example.com"  # URL of your OIDC provider
client_id = "<application ID>"  # Application ID given by your OIDC provider
```


Examples
--------

```console
# To log-in as a user, using a web browser:
oidc login --interactive
```


License
-------

This project is licensed under the terms of the MIT license.


A [YZR](https://www.yzr.ai/) Free and Open Source project.

