/authomatic

Simple yet powerful authorization / authentication client library for Python web applications.

Primary LanguagePythonMIT LicenseMIT

Authomatic

https://travis-ci.org/authomatic/authomatic.svg?branch=master

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 python-openid 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:
    • OAuth 1.0a providers: Bitbucket, Flickr, Meetup, Plurk, Twitter, Tumblr, UbuntuOne, Vimeo, Xero, Xing and Yahoo.
    • OAuth 2.0 providers: Amazon, Behance, Bitly, Cosm, DeviantART, Eventbrite, Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal, Reddit, Viadeo, VK, WindowsLive, Yammer and Yandex.
    • python-openid and Google App Engine 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 <https://github.com/touilleMan>`__.

Live Demo

There is a Google App Engine 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.