Back to Home
Facebook SDK Demo

Facebook SDK Integration

This page demonstrates how to use the Facebook SDK for JavaScript in your application

The Facebook SDK has been integrated into this application. You can use it to:

  • Authenticate users with their Facebook accounts
  • Access user profile information (with permission)
  • Post to Facebook on behalf of users
  • Implement Facebook social plugins
  • Track app events and analytics

Implementation Details:

1. The Facebook SDK is loaded in the root layout.tsx file

2. Environment variables are used for the App ID and API version

3. Utility functions are available in lib/facebook.ts

Two Ways to Implement Facebook Login

Official Facebook Button

Using the official Facebook XFBML button

Facebook Authentication

Custom Login Button

Using a custom button with direct SDK calls

Custom Facebook Login

Facebook Business Data

This section demonstrates how to fetch and display business data from Facebook using the Graph API. Log in with one of the buttons above to see your Facebook business pages, recent posts, and groups. This data can be used by agents to find leads and opportunities from Facebook content.

Facebook Business Data

Please log in with Facebook to view your business data

You need to be logged in to Facebook to view your business pages and posts. Please use one of the login buttons above.

Implementation Code

How to use the Facebook SDK in your components

// Example usage of Facebook SDK
import {
  loginWithFacebook,
  getFacebookUserData,
  getFacebookUserPosts,
  getFacebookUserAccounts,
  getFacebookProfilePicture,
  getFacebookUserGroups
} from "@/lib/facebook";

// Login with Facebook
const handleLogin = async () => {
  try {
    const response = await loginWithFacebook();
    
    if (response.status === 'connected') {
      // User is logged in
      const userData = await getFacebookUserData();
      console.log("User data:", userData);
      
      // Get user's business pages
      const pages = await getFacebookUserAccounts();
      console.log("Business pages:", pages);
      
      // Get user's recent posts
      const posts = await getFacebookUserPosts();
      console.log("Recent posts:", posts);
      
      // Get user's profile picture
      const picture = await getFacebookProfilePicture(300, 300);
      console.log("Profile picture:", picture);
      
      // Get user's groups
      const groups = await getFacebookUserGroups();
      console.log("Groups:", groups);
    }
  } catch (error) {
    console.error(error);
  }
};

// Render a login button
<button onClick={handleLogin}>
  Login with Facebook
</button>