AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

Auth0 React

skill-auth0-agent-skills-auth0-react · by auth0

>

No reviews yet
0 installs
17 views
0.0% view→install

Install

$ agentstack add skill-auth0-agent-skills-auth0-react

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-auth0-agent-skills-auth0-react)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Auth0 React? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Auth0 React Integration

Add authentication to React single-page applications using @auth0/auth0-react.


Prerequisites

  • React 16.11+ application (Vite or Create React App) - supports React 16, 17, 18, and 19
  • Auth0 account and application configured
  • If you don't have Auth0 set up yet, use the auth0-quickstart skill first

When NOT to Use

  • Next.js applications - Use auth0-nextjs skill for both App Router and Pages Router
  • React Native mobile apps - Use auth0-react-native skill for iOS/Android
  • Server-side rendered React - Use framework-specific SDK (Next.js, Remix, etc.)
  • Embedded login - This SDK uses Auth0 Universal Login (redirect-based)
  • Backend API authentication - Use express-openid-connect or JWT validation instead

Quick Start Workflow

1. Install SDK

npm install @auth0/auth0-react

2. Configure Environment

For automated setup with Auth0 CLI, see [Setup Guide](references/setup.md) for complete scripts.

For manual setup:

Create .env file:

Vite:

VITE_AUTH0_DOMAIN=your-tenant.auth0.com
VITE_AUTH0_CLIENT_ID=your-client-id

Create React App:

REACT_APP_AUTH0_DOMAIN=your-tenant.auth0.com
REACT_APP_AUTH0_CLIENT_ID=your-client-id

3. Wrap App with Auth0Provider

Update src/main.tsx (Vite) or src/index.tsx (CRA):

import React from 'react';
import ReactDOM from 'react-dom/client';
import { Auth0Provider } from '@auth0/auth0-react';
import App from './App';

ReactDOM.createRoot(document.getElementById('root')!).render(
  
    
      
    
  
);

4. Add Authentication UI

import { useAuth0 } from '@auth0/auth0-react';

export function LoginButton() {
  const { loginWithRedirect, logout, isAuthenticated, user, isLoading } = useAuth0();

  if (isLoading) return Loading...;

  if (isAuthenticated) {
    return (
      
        Welcome, {user?.name}
         logout({ logoutParams: { returnTo: window.location.origin } })}>
          Logout
        
      
    );
  }

  return  loginWithRedirect()}>Login;
}

5. Test Authentication

Start your dev server and test the login flow:

npm run dev  # Vite
# or
npm start    # CRA

Detailed Documentation

  • [Setup Guide](references/setup.md) - Automated setup scripts (Bash/PowerShell), CLI commands, manual configuration
  • [Integration Guide](references/integration.md) - Protected routes, API calls, error handling, advanced patterns
  • [API Reference](references/api.md) - Complete SDK API, configuration options, hooks reference, testing strategies

Common Mistakes

| Mistake | Fix | |---------|-----| | Forgot to add redirect URI in Auth0 Dashboard | Add your application URL (e.g., http://localhost:3000, https://app.example.com) to Allowed Callback URLs in Auth0 Dashboard | | Using wrong env var prefix | Vite uses VITE_ prefix, Create React App uses REACT_APP_ | | Not handling loading state | Always check isLoading before rendering auth-dependent UI | | Storing tokens in localStorage | Never manually store tokens - SDK handles secure storage automatically | | Missing Auth0Provider wrapper | Entire app must be wrapped in ` | | Provider not at root level | Auth0Provider must wrap all components that use auth hooks | | Wrong import path for env vars | Vite uses import.meta.env.VITE, CRA uses process.env.REACTAPP | | Using acrvalues redirect for in-app MFA | Use useAuth0().mfa API for in-app enrollment/challenge/verify flows | | Not catching MfaRequiredError | Wrap getAccessTokenSilently in try/catch and check instanceof MfaRequiredError | | Making direct HTTP calls to MFA endpoints | Use the mfa property from useAuth0() — it handles token management automatically | | Forgetting refresh tokens for step-up MFA | Set useRefreshTokens={true} on Auth0Provider when using interactiveErrorHandler="popup"` |


Related Skills

  • auth0-quickstart - Basic Auth0 setup
  • auth0-migration - Migrate from another auth provider
  • auth0-mfa - Add Multi-Factor Authentication
  • auth0-cli - Manage Auth0 resources from the terminal

Quick Reference

Core Hooks:

  • useAuth0() - Main authentication hook
  • isAuthenticated - Check if user is logged in
  • user - User profile information
  • loginWithRedirect() - Initiate login
  • logout() - Log out user
  • getAccessTokenSilently() - Get access token for API calls
  • mfa - MFA API client for enrollment, challenge, and verification
  • mfa.getAuthenticators(mfaToken) - List enrolled authenticators
  • mfa.getEnrollmentFactors(mfaToken) - Get available enrollment factors
  • mfa.enroll(params) - Enroll new authenticator (OTP, SMS, Email, Voice, Push)
  • mfa.challenge(params) - Initiate MFA challenge
  • mfa.verify(params) - Verify MFA challenge and complete authentication

MFA Error Types (import from @auth0/auth0-react):

  • MfaRequiredError - Thrown by getAccessTokenSilently when MFA is needed (has mfa_token and mfa_requirements)
  • MfaEnrollmentError, MfaChallengeError, MfaVerifyError - Thrown by respective mfa.* methods

Common Use Cases:

  • Login/Logout buttons → See Step 4 above
  • Protected routes → [Integration Guide](references/integration.md#protected-routes)
  • API calls with tokens → [Integration Guide](references/integration.md#calling-apis)
  • Error handling → [Integration Guide](references/integration.md#error-handling)
  • MFA handling → [Integration Guide](references/integration.md#mfa-handling)

References

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.