scribejava

ScribeJava :: La bibliothèque OAuth simple et robuste pour Java

Tests Dernière Release Licence MIT Android Ready

ScribeJava est une bibliothèque client OAuth légère, thread-safe et modulaire. Elle est conçue pour les développeurs qui exigent un contrôle total, une sécurité maximale et zéro dépendance inutile.


📖 Sommaire

  1. Pourquoi ScribeJava ?
  2. Architecture Modulaire
  3. Démarrage Rapide
  4. Installation
  5. Compatibilité & Android
  6. Documentation & Exemples

🌟 Pourquoi ScribeJava ?

ScribeJava est le choix idéal pour les projets qui refusent l’opacité des frameworks “tout-en-un”.

📊 Matrice de Choix : ScribeJava vs Frameworks Lourds

Caractéristique ScribeJava v9 Spring Security / Pac4j
Poids (Core) < 1 Mo > 50 Mo (avec dépendances)
Dépendances Zéro (JDK natif) Énorme graphe de transitivité
Courbe d’apprentissage Minutes Jours / Semaines
Contrôle du flux Total Abstraction rigide
Android Ready Oui (Natif) Difficile / Incompatible

🏗️ Architecture Modulaire

ScribeJava est conçu comme un écosystème de composants indépendants :

graph TD
    subgraph Core
        C[scribejava-core]
    end
    subgraph Extensions
        C --> O[scribejava-oidc]
        C --> A[scribejava-apis]
    end
    subgraph Transport
        C --> H1[scribejava-httpclient-okhttp]
        C --> H2[scribejava-httpclient-armeria]
    end

🚀 Démarrage Rapide

// 1. Initialisation
OAuth20Service service = new ServiceBuilder(clientId)
    .apiSecret(clientSecret)
    .build(GitHubApi.instance());

// 2. Récupération du Token (Strategy)
OAuth2AccessToken token = service.getAccessToken(new AuthorizationCodeGrant(code));

// 3. Appel API autorisé
OAuthRequest request = new OAuthRequest(Verb.GET, "https://api.github.com/user");
service.signRequest(token, request);

try (Response response = service.execute(request)) {
    System.out.println("Corps : " + response.getBody());
}

📦 Installation

ScribeJava est distribué via GitHub Releases.

💡 Note : Remplacez 9.0.0 par la version actuelle dans les exemples ci-dessous.

Maven

Installez le JAR téléchargé localement :

mvn install:install-file -Dfile=scribejava-core-9.0.0.jar -DgroupId=com.github.scribejava -DartifactId=scribejava-core -Dversion=9.0.0 -Dpackaging=jar

Puis ajoutez la dépendance :

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

🛠️ Un problème lors de l’installation ou du build ? Consultez le Guide de Dépannage.

Gradle (Android & JVM)

dependencies {
    implementation files('libs/scribejava-core-9.0.0.jar')
}

📱 Compatibilité


📚 Documentation & Exemples

🏗️ API Javadoc

Nous maintenons une couverture Javadoc de 100%.


Soutenez-nous ! Mettez une étoile sur le projet pour nous aider à grandir.