All Projects → scribejava → Scribejava

scribejava / Scribejava

Licence: mit
Simple OAuth library for Java

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Scribejava

OpenAM
OpenAM is an open access management solution that includes Authentication, SSO, Authorization, Federation, Entitlements and Web Services Security.
Stars: ✭ 476 (-90.89%)
Mutual labels:  oauth, oauth2
Oauthswift
Swift based OAuth library for iOS
Stars: ✭ 2,949 (-43.54%)
Mutual labels:  oauth2, oauth
ueberauth facebook
Facebook OAuth2 Strategy for Überauth.
Stars: ✭ 72 (-98.62%)
Mutual labels:  oauth, oauth2
goth fiber
Package goth_fiber provides a simple, clean, and idiomatic way to write authentication packages for fiber framework applications.
Stars: ✭ 26 (-99.5%)
Mutual labels:  oauth, oauth2
Passport
Simple, unobtrusive authentication for Node.js.
Stars: ✭ 19,608 (+275.42%)
Mutual labels:  oauth, oauth2
httpx-oauth
Async OAuth client using HTTPX
Stars: ✭ 55 (-98.95%)
Mutual labels:  oauth, oauth2
Auth
:atom: Social (OAuth1\OAuth2\OpenID\OpenIDConnect) sign with PHP
Stars: ✭ 457 (-91.25%)
Mutual labels:  oauth2, oauth
VKontakte
[READ ONLY] Subtree split of the SocialiteProviders/VKontakte Provider (see SocialiteProviders/Providers)
Stars: ✭ 82 (-98.43%)
Mutual labels:  oauth, oauth2
Oauth
🔗 OAuth 2.0 implementation for various providers in one place.
Stars: ✭ 336 (-93.57%)
Mutual labels:  oauth2, oauth
React Aad
A React wrapper for Azure AD using the Microsoft Authentication Library (MSAL). The easiest way to integrate AzureAD with your React for authentication.
Stars: ✭ 324 (-93.8%)
Mutual labels:  oauth2, oauth
AzureADAuthRazorUiServiceApiCertificate
Azure AD flows using ASP.NET Core and Microsoft.Identity
Stars: ✭ 41 (-99.22%)
Mutual labels:  oauth, oauth2
Retroauth
A library build on top of retrofit, for simple handling of authenticated requests
Stars: ✭ 405 (-92.25%)
Mutual labels:  oauth2, oauth
Spotify
[READ ONLY] Subtree split of the SocialiteProviders/Spotify Provider (see SocialiteProviders/Providers)
Stars: ✭ 13 (-99.75%)
Mutual labels:  oauth, oauth2
youtube-deno
A Deno client library of the YouTube Data API.
Stars: ✭ 30 (-99.43%)
Mutual labels:  oauth, oauth2
oauthproxy
This is an oauth2 proxy server
Stars: ✭ 32 (-99.39%)
Mutual labels:  oauth, oauth2
electron-oauth-helper
Easy to use helper library for OAuth1 and OAuth2.
Stars: ✭ 55 (-98.95%)
Mutual labels:  oauth, oauth2
lumen-oauth2
OAuth2 module for the Lumen PHP framework.
Stars: ✭ 29 (-99.44%)
Mutual labels:  oauth, oauth2
yii-auth-client
Yii Framework external authentication via OAuth and OpenID Extension
Stars: ✭ 20 (-99.62%)
Mutual labels:  oauth, oauth2
Grant
OAuth Proxy
Stars: ✭ 3,509 (-32.82%)
Mutual labels:  oauth2, oauth
Spruce
A social networking platform made using Node.js and MongoDB
Stars: ✭ 399 (-92.36%)
Mutual labels:  oauth2, oauth

Welcome to the home of ScribeJava, the simple OAuth client Java lib!

Donate Maven Central

Why use ScribeJava?

Dead Simple

Who said OAuth/OAuth2 was difficult? Configuring ScribeJava is so easy your grandma can do it! check it out:

OAuthService service = new ServiceBuilder(YOUR_API_KEY)
                                  .apiSecret(YOUR_API_SECRET)
                                  .build(LinkedInApi20.instance());

That single line (added newlines for readability) is the only thing you need to configure ScribeJava with LinkedIn's OAuth API for example.

Working executable examples are here Common usage: example

Threadsafe

Hit ScribeJava as hard and with many threads as you like.

Java 7 compatible

That's it. You can use it in old environments and in android apps. note: To compile from sources you will need Java 9 or newer

Async and other HTTP clients

ScribeJava support out-of-box several HTTP clients:

  • ning async http client 1.9.x (maven module scribejava-httpclient-ning) example
  • Async Http Client asynchttpclient 2.x (maven module scribejava-httpclient-ahc) example
  • OkHttp (maven module scribejava-httpclient-okhttp) example
  • Apache HttpComponents HttpClient (maven module scribejava-httpclient-apache) example
  • Armeria HTTP client (required >= java 8) example
  • any externally created HTTP client example

just add corresponding maven modules to your pom

Supports many flows and additional features

Supports all (50+) major 1.0a and 2.0 OAuth APIs out-of-the-box

Small and modular

ScribeJava's code is small (about 1k LOC) and simple to understand. No smart-ass or "clever" hacks here. You can use only 'core' or 'with apis' maven modules

Android-Ready

Works out of the box with android(TM) applications.

Stable & bulletproof

Good test coverage to keep you safe from harm.

When something bad actually happens, ScribeJava's meaningful error messages will tell you exactly what went wrong, when and where.

Pull it from Maven Central!

You can pull ScribeJava from the central maven repository, just add these to your pom.xml file:

<dependency>
    <groupId>com.github.scribejava</groupId>
    <artifactId>scribejava-apis</artifactId>
    <version>8.3.1</version>
</dependency>

And in case you need just core classes (that's it, without any external API (FB, VK, GitHub, Google etc) specific code), you could pull just 'core' artifact.

<dependency>
    <groupId>com.github.scribejava</groupId>
    <artifactId>scribejava-core</artifactId>
    <version>8.3.1</version>
</dependency>

How can I help ScribeJava

First of all, Pull Requests are welcome, the second option is donations.

When will ScribeJava support XXX (new RFC, custom functionality, new API etc.)

When you will send the pull request. That's the way for a majority of changes here. Or you can ask someone to make the paid job for you. In some cases, when I'm interested in changes (technically or financially), I can implement the request myself.

Paid consulting

If you or your business depends on the Scribejava and you need any specific improvement or new feature not currently implemented in the Scribejava, consider contacting me about a paid job.

Getting started in less than 2 minutes

Check the Getting Started page and start rocking! Please Read the FAQ before creating an issue :)

Some useful info and answers you can find on the wiki

Also, remember to read the fantastic tutorial that @akoskm wrote to easily integrate a server side app with an API (twitter in this case).

Questions?

Feel free to drop us an email or create issue right here on github.com

Forks

If you have a useful fork that should be listed there please contact us

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].