https://github.com/sothulthorn/react-native-user-authentication
The User Authentication App is a React Native application that implements a basic authentication flow using Firebase Authentication. It allows users to sign up, log in, and log out using their email and password. The app securely stores the authentication token on the device to maintain the user’s login state.
https://github.com/sothulthorn/react-native-user-authentication
asyncstorage expo expo-splash-screen firebase firebase-auth react-native react-navigation
Last synced: 2 months ago
JSON representation
The User Authentication App is a React Native application that implements a basic authentication flow using Firebase Authentication. It allows users to sign up, log in, and log out using their email and password. The app securely stores the authentication token on the device to maintain the user’s login state.
- Host: GitHub
- URL: https://github.com/sothulthorn/react-native-user-authentication
- Owner: sothulthorn
- Created: 2024-11-20T11:01:55.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-11-20T13:34:11.000Z (6 months ago)
- Last Synced: 2025-01-30T12:27:44.465Z (4 months ago)
- Topics: asyncstorage, expo, expo-splash-screen, firebase, firebase-auth, react-native, react-navigation
- Language: JavaScript
- Homepage:
- Size: 1.13 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# User Authentication App
The **User Authentication App** is a React Native application that implements a basic authentication flow, enabling users to sign up, log in, and log out using their email and password. The app integrates seamlessly with **Firebase Authentication** to handle user authentication processes and provides a secure and user-friendly experience.
## Features
- **Sign Up**: New users can register using their email and password, with validation to ensure secure account creation.
- **Log In**: Registered users can log in with their credentials to access the app's features.
- **Token Management**:
- Upon successful authentication, the app retrieves a token from Firebase.
- The token is stored securely on the device using `AsyncStorage`, ensuring users remain logged in even after restarting the app.
- **Log Out**: Users can log out, which clears the stored token, effectively ending the session.
- **Session Persistence**: The app checks for a stored token on launch to determine if the user should be logged in automatically.## Technologies Used
- **React Native**: For building the mobile application.
- **Firebase Authentication**: For managing user authentication processes.
- **AsyncStorage**: To securely store the authentication token on the device.
- **Expo Splash Screen**: For a smooth loading experience during app initialization.## How to Run the App
1. Clone the repository:
```bash
git clone https://github.com/sothulthorn/react-native-user-authentication.git
```
2. Setup the environment (.env.local):
```bash
EXPO_PUBLIC_API_KEY={YOUR_FIREBASE_API_KEY}
```
3. Install dependencies:
```bash
npm install
```
4. Install dependencies:
```bash
npm start
```## Project View
|
Sign In|Sign Up|Welcome|
| ------------------------------------------------------------------------ | ------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
||||