React Native Authentication

screenshot of React Native Authentication
react
react-native

React Native Authentication

Overview

The React-Native-Authentication project focuses on demonstrating user registration, authentication, and accessing protected resources between a React-Native app and a Node.js server. The project includes guidelines for installation and usage, providing details on the versions tested and steps required for setup.

Features

  • User Authentication: Demonstrates user registration and login functionality.
  • Access to Protected Resources: Guides users on accessing protected resources from the React-Native app.
  • Client and Server Installation: Provides installation steps for both the client and server components.
  • Token-Based Authentication: Implements token-based authentication using access and refresh tokens.
  • Server Configuration: Outlines entry-points for creating users, authenticating, revoking access, and managing users.

Installation

Client Installation

If React-Native is not installed, follow these steps:

  1. Go to the client/MobileApp directory.
  2. Run the following commands:
RuniOS:
RunAndroid:

Additional Steps:

  • Open client/MobileApp/src/services/api/config.js and replace 'localhost' with your machine's IP address.
  • Create a file named 'local.properties' in the /MobileApp/android folder with the SDK path.
  • Open an Emulator from Android Studio or connect an Android device.
  • Run the following command in the terminal.

Server Installation

If SailsJS is not installed, perform the following steps:

  1. Go to the server directory.
  2. Run the following commands:
Run

Additional Steps:

  • Access the server from http://localhost:3000/.
  • Secure entry-points are provided for user management, authentication, access token issuance, and revoking access.

Summary

The React-Native-Authentication project showcases user authentication from a React-Native app to a Node.js server. It offers clear instructions for client and server installation, token-based authentication, and managing user access to protected resources. By following the outlined steps, users can successfully set up and utilize the authentication system provided in the project.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

react-native
React Native

React Native is a framework for building mobile applications using React and JavaScript. It enables developers to write once and deploy to multiple platforms, including iOS, Android, and the web, while providing a native app-like experience to users.