SDKs Optionnels
SDKs officiels pour intégrer SyAuth dans vos applications.
💡 Les SDKs sont Optionnels
Vous pouvez intégrer SyAuth depuis n'importe quel langage de programmation en utilisant des requêtes HTTP standard. Les SDKs sont des wrappers de commodité qui gèrent la complexité OAuth pour vous.
Vous ne voyez pas votre langage ? Consultez les Guides d'intégration pour des exemples indépendants du langage utilisant curl, Python, JavaScript, C, et plus.
SDKs Disponibles
| SDK | Package | Statut |
|---|---|---|
| Next.js | @syauth/nextjs | ✅ Disponible |
| Django | django-syauth | ✅ Disponible |
| React SPA | - | 🔜 Planifié |
| Node.js | - | 🔜 Planifié |
SDK Next.js
Le SDK Next.js officiel fournit :
- SyAuthProvider - Fournisseur de contexte pour l'état d'authentification
- useSyAuth - Hook pour les opérations d'authentification
- useOAuthCallback - Hook pour gérer les callbacks OAuth
- useRegistration - Hook pour l'inscription des utilisateurs
- withAuth - Middleware pour la protection des routes
Démarrage rapide
npm install @syauth/nextjs
// app/layout.tsx
import { SyAuthProvider } from '@syauth/nextjs';
export default function RootLayout({ children }) {
return (
<SyAuthProvider
config={{
apiUrl: process.env.NEXT_PUBLIC_SYAUTH_API_URL!,
oauthClientId: process.env.NEXT_PUBLIC_SYAUTH_CLIENT_ID!,
redirectUri: process.env.NEXT_PUBLIC_SYAUTH_REDIRECT_URI!,
}}
>
{children}
</SyAuthProvider>
);
}
📖 Voir le README sur GitHub pour la documentation complète
SDK Django
Le SDK Django officiel fournit :
- SyAuthBackend - Backend d'authentification personnalisé
- @syauth_login_required - Décorateur de protection des vues
- LoginView / CallbackView / LogoutView - Vues pour le flux OAuth
- Middleware - Validation optionnelle des tokens
Démarrage rapide
pip install django-syauth
# settings.py
INSTALLED_APPS = [
...
'django_syauth',
]
AUTHENTICATION_BACKENDS = [
'django.contrib.auth.backends.ModelBackend',
'django_syauth.backend.SyAuthBackend',
]
SYAUTH = {
'API_URL': 'https://api.syauth.com/e/v1',
'CLIENT_ID': 'votre-client-id',
'API_KEY': 'votre-api-key',
'REDIRECT_URI': 'http://localhost:8000/auth/callback',
}
📖 Voir le README sur GitHub pour la documentation complète
Comparaison des fonctionnalités
| Fonctionnalité | Next.js | Django |
|---|---|---|
| OAuth 2.0 + PKCE | ✅ | ✅ |
| Rafraîchissement automatique des tokens | ✅ | ✅ |
| TypeScript/Type Hints | ✅ | ✅ |
| Protection des routes | ✅ | ✅ |
| Support côté serveur | ✅ | ✅ |
| Gestion des sessions | ✅ | ✅ |