Bird
Raised Fist0
Firebasecloud~10 mins

Email/password login in Firebase - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to initialize Firebase Authentication.

Firebase
const auth = firebase.auth().[1]();
Drag options to blanks, or click blank then click option'
AgetAuth
BinitializeAuth
CauthInit
DstartAuth
Attempts:
3 left
💡 Hint
Common Mistakes
Using a function name that does not exist in Firebase Auth.
Trying to call auth as a property instead of a function.
2fill in blank
medium

Complete the code to sign in a user with email and password.

Firebase
auth.[1](email, password).then(userCredential => {
  // Signed in
}).catch(error => {
  // Handle error
});
Drag options to blanks, or click blank then click option'
AsignInWithEmailAndPassword
BloginWithEmail
CauthenticateUser
DsignInUser
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect method names that do not exist.
Confusing sign-in with sign-up methods.
3fill in blank
hard

Fix the error in the code to create a new user with email and password.

Firebase
auth.[1](email, password).then(userCredential => {
  // User created
}).catch(error => {
  // Handle error
});
Drag options to blanks, or click blank then click option'
AregisterUser
BcreateUserWithEmailAndPassword
CnewUserWithEmail
DaddUserWithPassword
Attempts:
3 left
💡 Hint
Common Mistakes
Using non-existent method names.
Mixing sign-in and sign-up method names.
4fill in blank
hard

Fill both blanks to send a password reset email to the user.

Firebase
auth.[1](auth, [2]).then(() => {
  // Email sent
}).catch(error => {
  // Handle error
});
Drag options to blanks, or click blank then click option'
AsendPasswordResetEmail
Bemail
CresetEmail
DsendResetEmail
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect method names.
Passing wrong arguments to the method.
5fill in blank
hard

Fill all three blanks to update the user's password after login.

Firebase
const user = auth.currentUser;
update[1](user, [2]).then(() => {
  console.log('[3]');
}).catch(error => {
  // Handle error
});
Drag options to blanks, or click blank then click option'
APassword
BnewPassword
CPassword updated successfully
DEmail
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong function names.
Confusing email with password update.

Practice

(1/5)
1. What is the main purpose of using email/password login in Firebase?
easy
A. To allow users to create accounts and sign in securely
B. To store user data in a database
C. To send emails to users automatically
D. To host a website on Firebase

Solution

  1. Step 1: Understand the feature purpose

    Email/password login lets users create accounts and sign in using their email and a password.
  2. Step 2: Identify the correct use case

    This method is mainly for user authentication, not for storing data or sending emails.
  3. Final Answer:

    To allow users to create accounts and sign in securely -> Option A
  4. Quick Check:

    Email/password login = user sign-in [OK]
Hint: Email/password login is for user sign-in only [OK]
Common Mistakes:
  • Confusing login with data storage
  • Thinking it sends emails automatically
  • Assuming it hosts websites
2. Which Firebase method is used to create a new user with email and password?
easy
A. firebase.auth().createUserWithEmailAndPassword(email, password)
B. firebase.auth().sendPasswordResetEmail(email)
C. firebase.auth().signInWithEmailAndPassword(email, password)
D. firebase.auth().signOut()

Solution

  1. Step 1: Identify method for new user creation

    The method to create a new user is createUserWithEmailAndPassword.
  2. Step 2: Differentiate from other methods

    signInWithEmailAndPassword is for login, sendPasswordResetEmail is for resetting password, signOut logs out the user.
  3. Final Answer:

    firebase.auth().createUserWithEmailAndPassword(email, password) -> Option A
  4. Quick Check:

    Create user method = createUserWithEmailAndPassword [OK]
Hint: Create user uses 'createUserWithEmailAndPassword' [OK]
Common Mistakes:
  • Using signInWithEmailAndPassword to create users
  • Confusing reset email with user creation
  • Calling signOut instead of createUser
3. What will happen if you run this code snippet?
firebase.auth().signInWithEmailAndPassword('user@example.com', 'wrongpass')
  .catch(error => console.log(error.code));
medium
A. Logs 'auth/user-not-found' error code
B. Logs 'auth/network-request-failed' error code
C. Logs 'auth/invalid-email' error code
D. Logs 'auth/wrong-password' error code

Solution

  1. Step 1: Understand signInWithEmailAndPassword behavior

    This method tries to sign in with given email and password.
  2. Step 2: Analyze error for wrong password

    If the email exists but password is wrong, Firebase returns 'auth/wrong-password'.
  3. Final Answer:

    Logs 'auth/wrong-password' error code -> Option D
  4. Quick Check:

    Wrong password error = 'auth/wrong-password' [OK]
Hint: Wrong password triggers 'auth/wrong-password' error [OK]
Common Mistakes:
  • Assuming user-not-found error instead
  • Confusing invalid email format error
  • Thinking network error will occur
4. Identify the error in this Firebase email/password login code:
firebase.auth().signInWithEmailAndPassword(email, password)
  .then(userCredential => {
    console.log('User signed in:', userCredential.user);
  })
  .catch(error => {
    console.log('Error:', error.message);
  });

Assume email and password are not defined.
medium
A. Missing import of firebase module
B. Variables email and password are undefined
C. Incorrect method name used
D. No catch block for errors

Solution

  1. Step 1: Check variable definitions

    The code uses email and password variables but they are not defined anywhere.
  2. Step 2: Confirm method and error handling

    The method signInWithEmailAndPassword is correct and there is a catch block for errors.
  3. Final Answer:

    Variables email and password are undefined -> Option B
  4. Quick Check:

    Undefined variables cause runtime error [OK]
Hint: Always define email and password before use [OK]
Common Mistakes:
  • Ignoring variable definitions
  • Thinking method name is wrong
  • Missing error handling block
5. You want to ensure users create strong passwords during Firebase email/password signup. Which approach is best?
hard
A. Use Firebase's built-in password strength validation only
B. Send password to server for manual strength checking after signup
C. Check password strength on client side before calling createUserWithEmailAndPassword
D. Allow any password and rely on Firebase error messages

Solution

  1. Step 1: Understand Firebase password validation

    Firebase requires minimum 6 characters but does not enforce strong passwords by default.
  2. Step 2: Implement client-side password strength check

    Checking password strength on client side before signup improves security and user experience.
  3. Final Answer:

    Check password strength on client side before calling createUserWithEmailAndPassword -> Option C
  4. Quick Check:

    Client-side validation = better password strength [OK]
Hint: Validate password strength before signup call [OK]
Common Mistakes:
  • Relying only on Firebase's minimal checks
  • Ignoring password strength until after signup
  • Sending passwords to server for manual checks
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard