https://github.com/authomatic/authomatic
Simple yet powerful authorization / authentication client library for Python web applications.
https://github.com/authomatic/authomatic
authentication authorization oauth-client oauth2-client openid-client python
Last synced: about 9 hours ago
JSON representation
Simple yet powerful authorization / authentication client library for Python web applications.
- Host: GitHub
- URL: https://github.com/authomatic/authomatic
- Owner: authomatic
- License: mit
- Created: 2013-02-07T14:13:35.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2025-12-12T08:28:51.000Z (5 days ago)
- Last Synced: 2025-12-13T19:09:20.414Z (4 days ago)
- Topics: authentication, authorization, oauth-client, oauth2-client, openid-client, python
- Language: Python
- Homepage: https://authomatic.github.io/authomatic
- Size: 6.79 MB
- Stars: 1,047
- Watchers: 32
- Forks: 389
- Open Issues: 49
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGES.rst
- Contributing: CONTRIBUTING.rst
- Funding: FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-flask - Authomatic - Authomatic provides out of the box support for a number of providers using OAuth 1.0a (Twitter, Tumblr and more) and OAuth 2.0 (Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal and more) (Authorization)
- awesome-flask - Authomatic - Authomatic provides out of the box support for a number of providers using OAuth 1.0a (Twitter, Tumblr and more) and OAuth 2.0 (Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal and more) (Authorization)
- awesome-auth - Authomatic - Simple yet powerful authorization & authentication client library for Python web applications. (Authentication / <a name="authN-python"></a>Python)
- awesome-flask - Authomatic - Authomatic provides out of the box support for a number of providers using OAuth 1.0a (Twitter, Tumblr and more) and OAuth 2.0 (Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal and more) (Authorization)
- awesome-python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- awesome-pyramid - Authomatic - Simple yet powerful (Authentication)
- awesome-flask - Authomatic - Framework agnostic library for Python web applications that simplifies authentication and authorization of users via OAuth and OpenID. (Third-Party Extensions / Auth)
- starred-awesome - authomatic - Simple yet powerful authorization / authentication client library for Python web applications. (Python)
- best-of-web-python - GitHub - 34% open · ⏱️ 21.10.2025): (Authorization & Authentication)
- awesome-python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- cybersecurity-auth - Authomatic - Simple yet powerful authorization & authentication client library for Python web applications. (`Authentication Development` / <a name="authN-python"></a>Python)
- awesome-python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- awesome-python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- Awesome-Python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- Python-Awesome - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
- awesome-python - authomatic - Simple yet powerful authorization / authentication client library for Python web applications. (Awesome Python / Authentication)
- git-github.com-vinta-awesome-python - Authomatic - Simple but powerful framework agnostic authentication/authorization client. (Authentication)
README
.. |gae| replace:: Google App Engine
.. _gae: https://developers.google.com/appengine/
.. |webapp2| replace:: Webapp2
.. _webapp2: http://webapp-improved.appspot.com/
.. |oauth2| replace:: OAuth 2.0
.. _oauth2: http://oauth.net/2/
.. |oauth1| replace:: OAuth 1.0a
.. _oauth1: http://oauth.net/core/1.0a/
.. |openid| replace:: OpenID
.. _openid: http://openid.net/
.. |pyopenid| replace:: python-openid
.. _pyopenid: http://pypi.python.org/pypi/python-openid/
==========
Authomatic
==========
Google Summer of Code 2025:
- Contributor: Andrew Himelstieb
- Mentor: Jens Klein
- This package was included in the GSOC '25 program with the Plone Foundation. This 2.0 release was a major aspect to the project.
This 2.0 Release contains major breaking changes that will be incorperated into the official changelog soon.
These changes include the following:
- Removed Travis CI
- Removed Python Support for version < Python 3.10
- Removed Support for Deprecated OAuth1 authentication Flow
- Includes all OAuth1 Provders:
- Bitbucket
- Flickr
- Meetup
- Plurk
- Twitter
- Tumblr
- UbuntuOne
- Vimeo
- Xero
- Xing
- Yahoo
- Removed OpenID support
- The following Providers were updated to OAuth2 Authenication FLow and classes added to OAuth2.py:
- Bitbucket
- Twitter/x
- Tumblr
- Vimeo
- Yahoo
- New Functional Tests were created using pytest-httpx to mock the authentication flow in a ping-pong fashion for:
- Google
- Github
- Facebook
- Twitter/x
- Amazon
**Authomatic**
is a **framework agnostic** library
for **Python** web applications
with a **minimalistic** but **powerful** interface
which simplifies **authentication** of users
by third party providers like **Facebook** or **Twitter**
through standards like **OAuth** and **OpenID**.
For more info visit the project page at http://authomatic.github.io/authomatic.
Maintainers
===========
**Authomatic** was migrated from a private project of Peter Hudec to a community-managed project.
Many thanks to Peter Hudec for all his hard work for creating and maintaining **authomatic**!
We are now a small team of volunteers, not paid for the work here.
Any help is appreciated!
Features
========
* Loosely coupled.
* Tiny but powerful interface.
* The |pyopenid|_ library is the only **optional** dependency.
* **Framework agnostic** thanks to adapters.
Out of the box support for **Django**, **Flask**, **Pyramid** and **Webapp2**.
* Ready to accommodate future authorization/authentication protocols.
* Makes provider API calls a breeze.
* Asynchronous requests.
* JavaScript library as a bonus.
* Out of the box support for:
* |oauth1|_ providers: **Bitbucket**, **Flickr**, **Meetup**, **Plurk**,
**Twitter**, **Tumblr**, **UbuntuOne**, **Vimeo**, **Xero**, **Xing** and **Yahoo**.
* |oauth2|_ providers: **Amazon**, **Behance**, **Bitly**, **Cosm**,
**DeviantART**, **Eventbrite**, **Facebook**, **Foursquare**,
**GitHub**, **Google**, **LinkedIn**, **PayPal**, **Reddit**,
**Viadeo**, **VK**, **WindowsLive**, **Yammer** and **Yandex**.
* |pyopenid|_ and |gae|_ based |openid|_.
License
=======
The package is licensed under
`MIT license `__.
Requirements
============
Requires **Python 3.4** or newer.
**Python 3.x** support added in **Authomatic 0.0.11** thanks to Emmanuel Leblond `__.
Live Demo
=========
There is a |gae| based live demo app running at
http://authomatic-example.appspot.com which makes use of most of the features.
Contribute
==========
Contributions of any kind are very welcome.
If you want to contribute, please read the
`Development Guide `__
first. The project is hosted on
`GitHub `__.
Usage
=====
Read the exhaustive documentation at http://authomatic.github.io/authomatic.
Changelog
=========
The `Changelog is part of the documentation `_.