https://github.com/danitilahun/flutter-node-otp-phone-number-verification
This project showcases a phone number verification system developed using Flutter for the frontend, Vonage for communication, and Express.js for backend functionality. It offers a secure and user-friendly approach to verifying phone numbers, ensuring a seamless authentication process.
https://github.com/danitilahun/flutter-node-otp-phone-number-verification
expressjs flutter nodejs otp-verification phone-number-verification vonage
Last synced: 23 days ago
JSON representation
This project showcases a phone number verification system developed using Flutter for the frontend, Vonage for communication, and Express.js for backend functionality. It offers a secure and user-friendly approach to verifying phone numbers, ensuring a seamless authentication process.
- Host: GitHub
- URL: https://github.com/danitilahun/flutter-node-otp-phone-number-verification
- Owner: Danitilahun
- License: mit
- Created: 2023-07-11T21:01:37.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-07-11T21:29:42.000Z (almost 2 years ago)
- Last Synced: 2025-03-31T05:31:57.848Z (about 2 months ago)
- Topics: expressjs, flutter, nodejs, otp-verification, phone-number-verification, vonage
- Language: Dart
- Homepage:
- Size: 507 KB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# flutter-node-otp-phone-number-verification
**Phone Number Authentication using Node.js, Flutter, and Vonage SMS Gateway Service API**
[](LICENSE)
## Overview

This project demonstrates how to implement phone number authentication using Node.js, Flutter, and the Vonage SMS Gateway Service API. Phone number authentication provides a secure and convenient way for users to verify their identity during the login process.
## Features
- Generate and send OTP via SMS to users for phone number verification.
- Validate the OTP entered by the user to authenticate their identity.
- Integration with the Vonage SMS Gateway Service API to send and receive SMS messages.## Technologies Used
- Node.js
- Flutter
- Vonage SMS Gateway Service API## Setup Instructions
### Prerequisites
- Node.js should be installed on your machine.
- Flutter SDK should be installed.
- Sign up for a Vonage account and obtain the API key, API secret, and virtual phone number.### Backend (Node.js)
1. Clone the repository: `git clone https://github.com/Danitilahun/flutter-node-otp-phone-number-verification.git`
2. Navigate to the `backend` directory: `cd API`
3. Install dependencies: `npm install`
4. Configure the Vonage API credentials in the `.env` file.
5. Start the Node.js server: `npm start`### Frontend (Flutter)
1. Open the `otp_verification` directory in your preferred code editor.
2. Configure the backend server URL in the Flutter code.
3. Run the Flutter application on a connected device or emulator: `flutter run`## API Endpoints
- `POST /auth/send-otp`: Sends an OTP via SMS to the user's phone number.
- `POST /auth/verify-otp`: Verifies the OTP entered by the user.## Usage
1. Launch the Flutter application on your device/emulator.
2. Enter your phone number and click on the "Send OTP" button.
3. Receive the OTP on your phone.
4. Enter the OTP in the application and click on the "Verify" button.
5. If the OTP is valid, the user is successfully authenticated.## Contributing
Contributions to this project are welcome. To contribute, please follow these steps:
1. Fork the repository.
2. Create a new branch for your contribution: `git checkout -b feature/your-feature`.
3. Commit your changes: `git commit -m 'Add your commit message'`.
4. Push to the branch: `git push origin feature/your-feature`.
5. Open a pull request and describe the changes you have made.## License
This project is licensed under the [MIT License](LICENSE).
## Acknowledgements
- [Vonage](https://www.vonage.com): Used for sending and receiving SMS messages.
## Contact
For any questions or feedback, please reach out to [Daniel Tilahun](mailto:[email protected]).