friyad / miniext-coding-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MiniExtensions Frontend Developer Coding Challenge

Welcome to the MiniExtensions Frontend Developer coding challenge repository! This repository contains my solution to the challenge requirements provided by MiniExtensions for the Frontend Developer job position.

My Portfolio: https://www.friyad.site


Website Photo

Challenge Requirements

The main challenge requirements were Integration phone number on authentication (Sign Up / Log In).

  • Phone Number > Email
  • Email > Phone Number

Ensure that linking a new email or phone number doesn't create a separate user object in Firebase.

Solution Overview

To address the challenge requirements, I implemented the following solution:

  • Integrated phone number authentication using Firebase Authentication with getting help from existing codes which were written for email and Google provider.
  • Implemented a login flow that ensures users authenticate with both their phone number and email provider before accessing the home page content.
  • Ensured that linking a new email or phone number does not create a separate user object in Firebase by leveraging Firebase Authentication features and maintaining a single user profile.

Technologies Used

  • Firebase
  • Next JS
  • JavaScript/TypeScript
  • Tailwind CSS

Getting Started

To run the application locally, follow these steps:

  • Clone this repository to your local machine.
  • Install dependencies by running
npm install
# or
yarn install
  • Configure Firebase Authentication and obtain necessary API keys.
  • Start the development server by running
npm run dev
# or
yarn dev


Thank you for considering my solution to the MiniExtensions Frontend Developer coding challenge. I look forward to discussing it further!

About

License:MIT License


Languages

Language:TypeScript 95.0%Language:CSS 2.3%Language:JavaScript 1.6%Language:Shell 1.1%