Menu Close



npm bundle size

React component for a simple OAuth login with Twitter. This package NOT FOR PRODUCTION, because it’s require to keep CONSUMER_KEY and CONSUMER_SECRET on client side, which are huge security risk. Use this package for MVP or quick prototype only. If you looking for some production solution, please use server side authorization like passport-twitter.


SECURITY NOTE: This package using third-party proxy, to resolve CORS policy protection on requests from your custom domain to If it’s not working for you for some security concerns, we recommend to use server side authorization like passport-twitter or other.


🚀 Get Started

Follow these steps to start using React Twitter Login:

  1. Installation

    # with npm
    npm i react-twitter-login
    # with yarn
    yarn add react-twitter-login
  2. Import and configure component.

    This component should be rendered on route that match with one of whitelisted callback URLs of your Twitter app.

    import React from "react"; import TwitterLogin from "react-twitter-login"; export default (props) => { const authHandler = (err, data) => { console.log(err, data); }; return ( <TwitterLogin authCallback={authHandler} consumerKey={CONSUMER_KEY} consumerSecret={CONSUMER_SECRET} /> ); };
  3. Find more info about keys and Twitter developer apps in official docs.


Property Type Default Description
authCallback function required Callback function which takes two arguments (error, authData)
consumerKey string required Consumer API Key of your Twitter developer app (not Access Token)
consumerSecret string required Consumer API Secret of your Twitter developer app (not Access Token Secret)
buttonTheme enum("light", "light_short", "dark", "dark_short") "light" Button style theme, that based on Twitter Brand Design
className string "" Custom class name
children React.Component "" Provide any component as a “children” prop to use custom button

📝 License


View Source Code
Posted in Development