Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Build an Invitation App with Salesforce
Rating: 4.8 out of 5(72 ratings)
774 students

Build an Invitation App with Salesforce

Master Salesforce Setup, Data Modeling, Experience Cloud Configuration, Apex, and Lightning Web Components
Last updated 1/2024
English
English [Auto],

What you'll learn

  • Building Real time salesforce application
  • Efficient Data Modeling
  • Craft Reusable UI Components
  • Create Engaging Website Experiences
  • Effectively Manage Data and User Input
  • Students will learn to create dynamic website experiences using Salesforce's Experience Cloud with Lightning Web Runtime (LWR)

Course content

1 section43 lectures5h 20m total length
  • Introduction5:28

    Design and build an end-to-end invitation app in Salesforce, capturing event details and RSVPs via invitation URLs and social links, with a live preview and mobile-friendly themes.

  • Prerequisites1:17

    Identify prerequisites and required tools for building an invitation app with Salesforce, including basics of Salesforce, Lightning Web Components, HTML, CSS, JavaScript, and Apex, plus VS Code and Salesforce CLI.

  • Topics you will learn1:41

    Create a Salesforce org and set up a Lightning Web Runtime site. Build LWC components to fetch and display data via Apex, and model objects with fields.

  • Salesforce Org Creation3:08

    Sign up for a Salesforce developer edition, verify your account via email, set a password that meets the criteria, and log in to your new Salesforce org.

  • Setting Up Your Experience Site5:45

    Enable digital experiences in Salesforce, set up an experience site using the LWR template, customize and publish a public invitation site with guest access.

  • Creating the Invitation Object4:02

    Master data modeling in Salesforce by creating the invitation custom object in Experience Cloud, the first of three objects, configuring an auto-number invitation number, tab, and fields via Object Manager.

  • Adding Fields to the Invitation Object10:27

    Add and configure fields on the invitation object in Salesforce, including text fields, date and time, URL, phone, picklist theme, and a formula invite URL to an experience site.

  • Creating Program Detail Object1:10

    Create a program details custom object in Salesforce using Object Manager, define label and plural label, set record name to program detail name as text, save, and optional tab wizard.

  • Adding Fields to Program Detail Object3:18

    Add fields to the program detail object in Salesforce, including program date, program start time, program end time, and a master-detail relationship to the invitation named program details only.

  • Creating Invitation Response Object1:15

    Create a custom invitation response object in Salesforce to store site responses (accept or reject), configure its labels and an auto-number for the record name via Object Manager.

  • Adding Fields to Invitation Response Object4:35

    Add fields to the invitation response object in Salesforce, including name, email, phone, a picklist with joyfully accept and regretfully decline, guests, and comments, linked by master-detail to the invitation.

  • Adding Roll-Up Summary Field2:29

    Add a roll-up summary field on the invitation object to count invitation responses that are joyfully accepted, showing the invitation accepted count.

  • Creating an Invitation App2:34

    Create a Salesforce lightning app named invitation app, customize color and image, and add the invitations object as a tab to enable creating invitation records with event, name, and address.

  • Setting the Page Layout for an Invitation5:32

    Customize the invitation page layout in Salesforce by dragging fields into sections, adding a two-column contact and social media area, and configuring RSVP and related lists.

  • Creating an Invitation Record7:27

    Create your first invitation record in the Salesforce invitation app by entering event details, greetings, participants, date, time, address, and map URL; then add program details and manage RSVP rules.

  • Fixing and Testing the Invitation URL1:20

    Fix the invitation url by ensuring guest user access, publish the page in the site builder, and test the link in Salesforce to confirm it opens without prompts.

  • Setting Up the Project in VSCode and Authorizing with Salesforce Org3:55

    Set up a VS Code project with a manifest, authorize your Salesforce org, and connect the invitation app to the org using the Salesforce CLI extension.

  • Creating a Banner Component3:02

    Create an invitation banner lightning web component in VS Code, deploy it to Salesforce, and preview the result in Experience Builder by setting targets to lightning__Community__Page.

  • Utilizing Static Resources in Salesforce7:26

    Upload and deploy static resources in Salesforce to power a banner with themed images. Import the resource, set a dynamic theme, and render the background in the LWC.

  • Fixing Site Spacing0:54

    Adjust site spacing in the Salesforce builder by unchecking max content width and setting all spacing to zero, then preview the end-to-end layout.

  • Designing the Layout for the Banner Component17:01

    Design the layout for the banner component by arranging social media icons, event info, and a countdown using flex layout and CSS styling to center content.

  • Setting Up the Apex Class5:40

    Create an apex class with a public static aura-enabled cacheable method get invitation details by id returning invitation__c fields greeting message, social URLs, event participants, date and time, and theme.

  • Fetching Banner Details in LWC from Apex14:51

    Fetch invitation banner details in lwc from apex via wire with a reactive id, map theme and social URLs, and format the date time with lightning formatted date time.

  • Implementing a Countdown Timer8:34

    Build a dynamic countdown timer using setInterval and an interval ID, compute days, hours, minutes, and seconds from current time and event date, and stop with clearInterval when it expires.

  • Adding Confetti to the Banner6:36

    Add confetti to the banner by loading the confetti.js static resource in Salesforce, then trigger it with confetti.add using the rendered callback.

  • Creating an Invitation Program Component2:07

    Create and deploy an invitation program Lightning web component, expose it for the Lightning Community, and place it in the center column beneath the invitation banner.

  • Fetching Program Details6:48

    Fetch program details by invitation ID from Salesforce using Apex and a wire service, cache the results, and store them in the program list of the invitation component.

  • Designing the Layout for the Invitation Program Details19:16

    Design and implement a responsive invitation program details layout using a two-column lightning layout, display program name with date and time, and style headings and borders with data from Apex.

  • Creating an Invitation Address Component1:56
  • Fetching Invitation Address Details4:57

    Fetch invitation address details in Salesforce by creating an Apex method and wiring it to a reactive record ID to retrieve the event address, map URL, and contact number.

  • Designing the Layout for the Invitation Address component18:45

    Design a responsive two-column invitation address component with a map on the left and address and contact details on the right, using lightning layout and apex data to populate fields.

  • Creating an Invitation Response Component1:22

    Create an invitation response component in Salesforce Lightning web components using VSCode, deploy it, and preview it in the Lightning community page.

  • Fetching Invitation RSVP Details4:43

    Fetches invitation rsvp details from apex for a given invitation id, wiring the get rsvp details method to retrieve accept, decline, and respond-by messages for display.

  • Designing the Layout for the Invitation Response component36:34

    Design and build an invitation response component for a Salesforce app, featuring an RSVP form (name, email, phone, RSVP, extra guests, comments) with SLDS styling and a formatted respond-by date.

  • Fetching Response Picklist Values8:16

    Fetches dynamic invitation response picklist values from the response field, maps them to radio option objects with proper label and API name, and wires them to the Lightning component.

  • Submit RSVP Response16:05

    Capture and submit an rsvp form with a dynamic picklist, sending data to Apex to create an invitation response record including name, email, phone, guests, accept or decline, and comments.

  • Display Response Submitted Message7:48

    Learn how to display a submitted RSVP message in a Salesforce invitation app by rendering accept or decline messages after form submission and updating the UI.

  • Persistent form response using LocalStorage10:37

    Store RSVP submission status in the browser using local storage to prevent resubmission on refresh, linking the key to the invitation’s record ID and displaying the correct message on load.

  • Display Message if Respond By Date Is Past5:54

    Implement logic in the invitation app to display an RSVP after date message and block submission when the respond-by date has passed, by comparing today with the provided date.

  • Responsiveness12:09

    Ensure the invitation app is responsive on mobile by testing in the Salesforce org, adjusting padding, countdown width, banner, and typography with media queries, then republishing to verify.

  • Color Theme Handling22:54

    Learn to implement color theming in a Salesforce invitation app by converting colors to variables, mapping them with DXP styling hooks, and enabling admin palette changes that update the UI.

  • Making InvitationId Dynamic6:00

    Make the invitation id dynamic by reading it from the URL parameter, replacing hard-coded ids across banner, address, and program details, then publish and test on the live site.

  • Final Testing4:40

    Perform end-to-end testing of the Salesforce invitation app by creating a new invitation, adding event details, social links, map, and program data, then verify theme changes and invitation status.

Requirements

  • A PC with Linux or Mac with stable internet
  • Basic knowledge of the Salesforce platform, Apex and LWC
  • Basic knowledge of HTML, CSS and JS
  • Willingness to learn & Grow

Description

Welcome to "Build an Invitation App with Salesforce" an immersive course designed to empower you with the skills needed to create dynamic and efficient web experiences using Salesforce's cutting-edge technologies. Whether you are a beginner or an experienced developer, this course provides a comprehensive journey through Experience Cloud, Lightning Web Components (LWC), Apex programming, and more.
Course Modules:

  1. Experience Cloud Site with Lightning Web Runtime (LWR):
    Learn how to build and deploy dynamic website experiences using Salesforce's powerful Lightning Web Runtime (LWR) on the Experience Cloud. Discover the capabilities of Experience Cloud for creating engaging external-facing portals.

  2. Salesforce Data Modeling:
    Dive into the world of data modeling, understanding how to design and implement efficient data structures in Salesforce. Explore best practices for optimal storage and retrieval of data to ensure the scalability of your Invitation App.

  3. Lightning Web Components (LWC):
    Craft reusable and modular UI components using Lightning Web Components. Explore the principles of LWC development, including data binding, event handling, and creating a flexible and scalable front-end for your application.

  4. Apex Programming Language:
    Leverage the power of Apex, Salesforce's proprietary programming language, for server-side logic.

  5. Records Fetching and Creation:
    Master the techniques for effectively querying and manipulating data in Salesforce. Understand how to fetch and create records using SOQL and DML operations to ensure seamless data management.

  6. Forms and Date Handling:
    Build user-friendly forms within your Invitation App and manage date values with precision and ease. Explore the tools and techniques for creating intuitive interfaces that enhance the user experience.

  7. Theme, Styling, and Responsiveness:
    Design visually appealing interfaces for your Invitation App. Learn how to apply themes, styles, and ensure responsiveness to create a seamless and aesthetically pleasing user interface.

  8. localStorage
    Explore the use of storage APIs, specifically localStorage, with Lightning Web Security.

  9. Static Resources and Beyond:
    Expand your development capabilities by exploring additional tools and resources. Understand how to utilize static resources and other advanced features to enhance the performance and functionality of your Invitation App.

Who this course is for:

  • Salesforce Professionals
  • Salesforce Developers who wants to learn building real time application
  • Willing to learn Salesforce, LWC and Apex based apps