Skip to content

Bootstrap React projects with authentication. Supported and maintained by Community Developers, not Auth0. For more information about different support levels check https://auth0.com/docs/support/matrix

License

Notifications You must be signed in to change notification settings

FraserSmith/auth0-react-scripts

 
 

Repository files navigation

auth0-react-scripts

Use create-react-app to bootstrap a new React project with authentication.

Example

https://auth0-react-app.now.sh

Disclaimer

This repo is not a fork of create-react-app. It's just a fork of react-scripts with modifications to the project template.

Setup

create-react-app my-app --scripts-version auth0-react-scripts

Auth Helpers

login(lockOptions)

Show Auth0 lock. Accepts any options that lock.show() accepts.

logout()

Clears authentication token from the browser and redirects to /login.

requireAuth

An onEnter handler for react-router. Add this handler to any Route that requires an authenticated user. The handler will ensure the user is authenticated before displaying the route. If the user is not authenticated, the handler will redirect them to /login and return them back to their previous route once they authenticate.

<Route path="/profile/edit" component={EditProfile} onEnter={requireAuth} />

connectProfile(Component)

Connects a react component to an authenticated user's profile. It does not modify the component class passed to it. Instead, it returns a new, connected component class, for you to use. Your wrapped component will receive two additional props:

profile

An Auth0 Profile object for an authenticated user.

onUpdateProfile(attributes)

Call to update profile. Returns a Promise that may resolve into an error if the update fails.

Tip: The profile props can be quickly added to your component's propTypes with connectProfile.PropTypes

static propTypes = {
  ...connectProfile.PropTypes
}

fetchAsUser(input, init)

A wrapper around window.fetch that will automatically set the Authorization header when a user is authenticated.

What is Auth0?

Auth0 helps you to:

  • Add authentication with multiple authentication sources, either social like Google, Facebook, Microsoft Account, LinkedIn, GitHub, Twitter, Box, Salesforce, among others, or enterprise identity systems like Windows Azure AD, Google Apps, Active Directory, ADFS or any SAML Identity Provider.
  • Add authentication through more traditional username/password databases.
  • Add support for linking different user accounts with the same user.
  • Support for generating signed Json Web Tokens to call your APIs and flow the user identity securely.
  • Analytics on how, when and where users are logging in.
  • Pull data from other sources and add it to the user profile, through JavaScript rules.

Create a free Auth0 account

  1. Go to Auth0 and click Sign Up.
  2. Use Google, GitHub or Microsoft Account to log in.

Issue Reporting

If you have found a bug or if you have a feature request, please report them at this repository issues section. Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.

Author

Auth0

License

This project is licensed under the MIT license. See the LICENSE file for more info.

About

Bootstrap React projects with authentication. Supported and maintained by Community Developers, not Auth0. For more information about different support levels check https://auth0.com/docs/support/matrix

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 72.1%
  • Shell 20.7%
  • CSS 3.0%
  • AppleScript 2.1%
  • HTML 2.1%