DESCRIPTION.rst 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. OAuthLib
  2. ========
  3. *A generic, spec-compliant, thorough implementation of the OAuth request-signing
  4. logic for python*
  5. .. image:: https://travis-ci.org/idan/oauthlib.png?branch=master
  6. :target: https://travis-ci.org/idan/oauthlib
  7. .. image:: https://coveralls.io/repos/idan/oauthlib/badge.png?branch=master
  8. :target: https://coveralls.io/r/idan/oauthlib
  9. OAuth often seems complicated and difficult-to-implement. There are several
  10. prominent libraries for handling OAuth requests, but they all suffer from one or
  11. both of the following:
  12. 1. They predate the `OAuth 1.0 spec`_, AKA RFC 5849.
  13. 2. They predate the `OAuth 2.0 spec`_, AKA RFC 6749.
  14. 3. They assume the usage of a specific HTTP request library.
  15. .. _`OAuth 1.0 spec`: http://tools.ietf.org/html/rfc5849
  16. .. _`OAuth 2.0 spec`: http://tools.ietf.org/html/rfc6749
  17. OAuthLib is a generic utility which implements the logic of OAuth without
  18. assuming a specific HTTP request object or web framework. Use it to graft OAuth
  19. client support onto your favorite HTTP library, or provide support onto your
  20. favourite web framework. If you're a maintainer of such a library, write a thin
  21. veneer on top of OAuthLib and get OAuth support for very little effort.
  22. Documentation
  23. --------------
  24. Full documentation is available on `Read the Docs`_. All contributions are very
  25. welcome! The documentation is still quite sparse, please open an issue for what
  26. you'd like to know, or discuss it in our `G+ community`_, or even better, send a
  27. pull request!
  28. .. _`G+ community`: https://plus.google.com/communities/101889017375384052571
  29. .. _`Read the Docs`: https://oauthlib.readthedocs.io/en/latest/index.html
  30. Interested in making OAuth requests?
  31. ------------------------------------
  32. Then you might be more interested in using `requests`_ which has OAuthLib
  33. powered OAuth support provided by the `requests-oauthlib`_ library.
  34. .. _`requests`: https://github.com/kennethreitz/requests
  35. .. _`requests-oauthlib`: https://github.com/requests/requests-oauthlib
  36. Which web frameworks are supported?
  37. -----------------------------------
  38. The following packages provide OAuth support using OAuthLib.
  39. - For Django there is `django-oauth-toolkit`_, which includes `Django REST framework`_ support.
  40. - For Flask there is `flask-oauthlib`_ and `Flask-Dance`_.
  41. - For Pyramid there is `pyramid-oauthlib`_.
  42. If you have written an OAuthLib package that supports your favorite framework,
  43. please open a Pull Request, updating the documentation.
  44. .. _`django-oauth-toolkit`: https://github.com/evonove/django-oauth-toolkit
  45. .. _`flask-oauthlib`: https://github.com/lepture/flask-oauthlib
  46. .. _`Django REST framework`: http://django-rest-framework.org
  47. .. _`Flask-Dance`: https://github.com/singingwolfboy/flask-dance
  48. .. _`pyramid-oauthlib`: https://github.com/tilgovi/pyramid-oauthlib
  49. Using OAuthLib? Please get in touch!
  50. ------------------------------------
  51. Patching OAuth support onto an http request framework? Creating an OAuth
  52. provider extension for a web framework? Simply using OAuthLib to Get Things Done
  53. or to learn?
  54. No matter which we'd love to hear from you in our `G+ community`_ or if you have
  55. anything in particular you would like to have, change or comment on don't
  56. hesitate for a second to send a pull request or open an issue. We might be quite
  57. busy and therefore slow to reply but we love feedback!
  58. Chances are you have run into something annoying that you wish there was
  59. documentation for, if you wish to gain eternal fame and glory, and a drink if we
  60. have the pleasure to run into eachother, please send a docs pull request =)
  61. .. _`G+ community`: https://plus.google.com/communities/101889017375384052571
  62. License
  63. -------
  64. OAuthLib is yours to use and abuse according to the terms of the BSD license.
  65. Check the LICENSE file for full details.
  66. Changelog
  67. ---------
  68. *OAuthLib is in active development, with the core of both OAuth 1 and 2
  69. completed, for providers as well as clients.* See `supported features`_ for
  70. details.
  71. .. _`supported features`: https://oauthlib.readthedocs.io/en/latest/feature_matrix.html
  72. For a full changelog see ``CHANGELOG.rst``.