---
schema_version: "1"
id: d3853ec4c3af50f788f9ef7abac37288077a9c168bfaa11a11db151fc19f5ceb
title: "Example: Create a Custom Visualforce Login Page from a Github Project"
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/external_identity_custom_login_git_project.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.external_identity_custom_login_git_project.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 3871930399f22662cd9de17507250fdbd7d03dde0eb8d97c8faeed3351570801
description: When creating custom code for your login page, it’s often helpful to start out with an existing example for guidance. Salesforce Identity provides a Github custom login page project that you can modify. The project includes custom Visualforce pages and Apex controllers.
products:
  - Security
  - Cross Cloud
release: "264"
---
# Example: Create a Custom Visualforce Login Page from a Github Project

When creating custom code for your login page, it’s often helpful to start out with an existing example for guidance. Salesforce Identity provides a Github custom login page project that you can modify. The project includes custom Visualforce pages and Apex controllers.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Salesforce Classic and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: <strong>Enterprise</strong>, <strong>Performance</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d22965e72">User Permissions
              Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d22965e72 ">To create and edit Visualforce pages:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d22965e72 ">Customize Application</td>

          </tr>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d22965e72 ">To edit Apex classes:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d22965e72 ">
              <p>Author Apex</p>
              <p>AND</p>
              <p style="margin-bottom:0;">Customize Application</p>
            </td>

          </tr>
        </tbody>
      </table>

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-identity-264-0-0-production-enus/699dab6f-8f1a-4662-b24f-6521d5b747f7/images/icon_note.png)

Note Only LWR sites configured with a Visualforce login page before Summer ’23 and Aura sites can use a custom Visualforce login page.

1. On Github, locate the Salesforce Identity [custom login page project](https://github.com/salesforceidentity/basic-custom-login).
    1. Download the project to your computer.
    2. Upload the zipped \_include directory from the project to Salesforce as a static resource called include with Cache Control set to **Public**.
    3. Create a field set named Registration to contain the user information for your site members, such as the user’s name, company name, and email.
    4. If you want to set up an Auth. provider for social sign-on, create a custom URL field on the User object.
2. Install the Apex controllers and Visualforce pages from the Github project to your org according to the project’s README.
3. Make your Visualforce pages available publicly.
    1. From Experience Workspaces, select **Administration**, select **Pages**, and then click **Go to Force.com**.
    2. Click **Public Access Settings**.
    3. Under Enabled Visualforce Page Access, click **Edit**.
    4. Select the Visualforce pages you created, add them to **Enabled Visualforce Pages**, and save your changes.
        
        ![Enable Visualforce pages](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-identity-264-0-0-production-enus/699dab6f-8f1a-4662-b24f-6521d5b747f7/identity/images/xid_custom_login_page_enable_vf.png)
4. Replace the site’s default pages with your new Visualforce pages.
    
    1. From Experience Workspaces, select **Administration**, and then select **Login & Registration**.
    2. Under Login, select **Visualforce** for the page type, enter the name of your Visualforce page in the search field, and click ![Lookup magnifying glass](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-identity-264-0-0-production-enus/699dab6f-8f1a-4662-b24f-6521d5b747f7/resources-global/_corporate/images/lookup.png).
    3. In the search results window, click the name of your page to select it, and click **Save**.
    
    To revert to the default page, select **Default Page**.
5. View your custom login page from a browser in private mode.
6. Make it your own.