Bird
Raised Fist0
Firebasecloud~5 mins

Cloud Functions setup in Firebase - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the first step to set up Firebase Cloud Functions?
Initialize your Firebase project locally using firebase init functions. This sets up the necessary files and folders for Cloud Functions.
Click to reveal answer
beginner
Which file contains the main code for Firebase Cloud Functions?
The index.js or index.ts file inside the functions folder contains the main Cloud Functions code.
Click to reveal answer
beginner
How do you deploy your Firebase Cloud Functions to the cloud?
Run firebase deploy --only functions in your terminal to upload and activate your Cloud Functions in Firebase.
Click to reveal answer
intermediate
What is the purpose of the package.json file in Cloud Functions setup?
It manages dependencies and scripts for your Cloud Functions project, like which Node.js packages your functions need.
Click to reveal answer
intermediate
Why should you test Cloud Functions locally before deploying?
Testing locally helps catch errors early and ensures your functions work as expected, saving time and avoiding deployment issues.
Click to reveal answer
Which command initializes Cloud Functions in a Firebase project?
Afirebase create functions
Bfirebase start functions
Cfirebase deploy functions
Dfirebase init functions
Where do you write your Firebase Cloud Functions code?
AIn the <code>functions/index.js</code> file
BIn the <code>public/index.html</code> file
CIn the Firebase console only
DIn the <code>database.rules.json</code> file
What does firebase deploy --only functions do?
AStarts the local emulator
BUploads only Cloud Functions to Firebase
CDeletes all Cloud Functions
DDeploys the entire Firebase project
Which file lists the Node.js packages your Cloud Functions need?
Apackage.json
Bfirebase.json
Cindex.js
Dfunctions.json
Why is local testing of Cloud Functions recommended?
ATo deploy faster
BTo avoid writing code
CTo catch errors before deployment
DTo skip authentication
Describe the basic steps to set up and deploy a Firebase Cloud Function.
Think about starting, coding, preparing, and sending your function to the cloud.
You got /4 concepts.
    Explain why managing dependencies with package.json is important in Cloud Functions setup.
    Consider what happens if your function needs a library that isn't installed.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the first command you run to start setting up Cloud Functions in a Firebase project?
      easy
      A. firebase init functions
      B. firebase deploy --only functions
      C. firebase start functions
      D. firebase create functions

      Solution

      1. Step 1: Understand Firebase setup commands

        The command firebase init functions initializes Cloud Functions in your project by creating necessary files and folders.
      2. Step 2: Differentiate from deploy command

        firebase deploy --only functions is used after setup to upload your functions to Firebase, not to start setup.
      3. Final Answer:

        firebase init functions -> Option A
      4. Quick Check:

        Setup starts with firebase init functions [OK]
      Hint: Setup always begins with 'firebase init functions' command [OK]
      Common Mistakes:
      • Confusing deploy command as setup
      • Using non-existent commands like 'firebase start functions'
      • Skipping initialization step
      2. Which of the following is the correct way to deploy only Cloud Functions after writing your code?
      easy
      A. firebase deploy --only database
      B. firebase deploy --only hosting
      C. firebase deploy --only functions
      D. firebase deploy --only storage

      Solution

      1. Step 1: Identify deployment targets

        Firebase allows deploying specific parts like hosting, functions, database, or storage using the --only flag.
      2. Step 2: Match the correct target for Cloud Functions

        To deploy Cloud Functions only, use firebase deploy --only functions.
      3. Final Answer:

        firebase deploy --only functions -> Option C
      4. Quick Check:

        Deploy functions with --only functions [OK]
      Hint: Use '--only functions' to deploy just Cloud Functions [OK]
      Common Mistakes:
      • Using wrong target like hosting or database
      • Omitting '--only' and deploying everything
      • Typing incorrect command syntax
      3. Given this Cloud Function code snippet, what will happen when an HTTP request is made to it?
      const functions = require('firebase-functions');
      exports.helloWorld = functions.https.onRequest((request, response) => {
        response.send('Hello from Firebase!');
      });
      medium
      A. The function does nothing and times out.
      B. The function returns 'Hello from Firebase!' as the HTTP response.
      C. The function throws an error because of missing return statement.
      D. The function returns a JSON object with message 'Hello from Firebase!'.

      Solution

      1. Step 1: Understand the function trigger type

        This function uses functions.https.onRequest, which handles HTTP requests and sends responses.
      2. Step 2: Analyze the response sent

        The function calls response.send('Hello from Firebase!'), which sends a plain text response with that message.
      3. Final Answer:

        The function returns 'Hello from Firebase!' as the HTTP response. -> Option B
      4. Quick Check:

        HTTP function sends plain text response [OK]
      Hint: HTTP functions respond with response.send() text [OK]
      Common Mistakes:
      • Thinking response.send requires return
      • Expecting JSON without using response.json()
      • Assuming function times out without response
      4. You wrote this Cloud Function but get an error when deploying:
      exports.myFunction = functions.https.onRequest((req, res) => {
        res.send('Hi');
      }
      What is the problem?
      medium
      A. Missing closing parenthesis and semicolon after the function definition.
      B. Using 'req' and 'res' instead of 'request' and 'response'.
      C. The function name 'myFunction' is invalid.
      D. Cloud Functions cannot handle HTTP requests.

      Solution

      1. Step 1: Check function syntax carefully

        The code snippet is missing a closing parenthesis ')' and semicolon ';' after the arrow function.
      2. Step 2: Validate other parts

        Using 'req' and 'res' is valid parameter naming. Function name is valid. Cloud Functions support HTTP triggers.
      3. Final Answer:

        Missing closing parenthesis and semicolon after the function definition. -> Option A
      4. Quick Check:

        Syntax errors cause deployment failure [OK]
      Hint: Check for missing brackets and semicolons in function code [OK]
      Common Mistakes:
      • Ignoring syntax errors like missing parentheses
      • Thinking parameter names must be 'request' and 'response'
      • Assuming Cloud Functions don't support HTTP
      5. You want to create a Cloud Function that triggers when a new user is added to Firebase Authentication and logs their email. Which setup is correct?
      hard
      A.
      exports.logNewUser = functions.database.ref('/users/{userId}').onCreate((snapshot) => {
        console.log('New user:', snapshot.val().email);
      });
      B.
      exports.logNewUser = functions.storage.object().onFinalize((object) => {
        console.log('New user:', object.email);
      });
      C.
      exports.logNewUser = functions.https.onRequest((req, res) => {
        console.log('New user:', req.body.email);
        res.send('Logged');
      });
      D.
      exports.logNewUser = functions.auth.user().onCreate((user) => {
        console.log('New user:', user.email);
      });

      Solution

      1. Step 1: Identify the correct trigger for new Firebase Authentication users

        The trigger functions.auth.user().onCreate runs when a new user is created in Firebase Authentication.
      2. Step 2: Confirm the logging of user email

        The callback receives a user object with an email property, which can be logged directly.
      3. Step 3: Differentiate from other triggers

        Database triggers listen to database changes, HTTP triggers respond to requests, and storage triggers respond to file changes, so they are incorrect here.
      4. Final Answer:

        Use auth user onCreate trigger to log new user email. -> Option D
      5. Quick Check:

        Auth user onCreate triggers new user events [OK]
      Hint: Use auth.user().onCreate for new Firebase Authentication users [OK]
      Common Mistakes:
      • Using database triggers for auth events
      • Using HTTP triggers to detect user creation
      • Confusing storage triggers with auth triggers
      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