@apollosproject/apollos-embeds

0.2.25 • Public • Published

Apollos Embeds

Apollo React Embeds are pre-built components that can be easily added to third-party websites, such as Webflow. These components provide a convenient way to integrate features such as authentication, a feature feed, and a banner widget, and ensure a consistent look and feel across all digital products.

Deployment

npm run bump

Using Embeds in Webflow

1. Adding the Script Tags:

Copy the following script tags into your Webflow website. In your Dashboard, you should see the tab 'Custom Code'. Scroll to the bottom and paste the following script tags in the Footer Code block: html

<link href="https://cdn.jsdelivr.net/npm/@apollosproject/apollos-embeds@latest/widget/index.css" rel="stylesheet"/>
<script src="https://cdn.jsdelivr.net/npm/@apollosproject/apollos-embeds@latest/widget/index.js" defer></script>

image

⚠️ As new versions of the embeds are published, you will have to update the version number in your script tags. So, the 0.0.7 part of the URLs will increment.

2. Adding the Embed Divs:

Under the design section of your Webflow website, you need to add a div for each embed you want on your site. Currently, there are two embeds available - 'Auth' and 'FeatureFeed'. You will probably need both of these embeds, so make two divs.

3. Adding the apollos-widget Class:

Add the class apollos-widget to both of those divs. This is necessary for the embeds to function properly.

image

4. Adding Custom Attributes:

To control which embed shows up in which div and what church content is displayed, we use 'data-attributes' or 'Custom attributes' in Webflow.

For the 'Auth' embed, add data-type="Auth" and data-church=[INSERT_CHURCH_SLUG_HERE] as custom attributes. Here's an example for Bayside:

<div class="apollos-widget" data-type="Auth" data-church="bayside"> </div>

image

For the 'FeatureFeed' embed, which displays the church's content, add data-type="FeatureFeed" and data-church=[INSERT_CHURCH_SLUG_HERE] as custom attributes. Here's an example for Bayside:

<div class="apollos-widget" data-type="FeatureFeed" data-church="bayside"> </div>

image

⚠️ Make sure to replace [INSERT_CHURCH_SLUG_HERE] with your church's unique identifier, or 'slug'.

Search type: Custom Profile modal width:

For the Search embed type, to control the width of the Profile modal that appears when click the "Profile" button, use the data-search-profile-size attribute.

<div class="apollos-widget" data-type="Search" data-church="bayside" data-search-profile-size="365px"></div>

Enabling Caching for Local Frustration

For local development and testing purposes, you might want to enable caching to ensure you're not receiving the latest responses directly from the API. To do this, please refer to the Apollo client configuration file:

../packages/web-shared/client/apollosApiLink.js

In this file, locate the header configuration within the apollosApiLink function and comment the following line:

'x-cache-me-not': 1,

Options

data-type
Auth
FeatureFeed
Search
data-church
apollos_demo
bayside
cedar_creek
celebration
chase_oaks
christ_fellowship
city_first
community_christian
crossings_community_church
crossroads_kids_club
crossroads_tv
default
eastview
eleven22
fairhaven
fake
fake_dag_church
fellowship_greenville
fellowship_nwa
hope_in_real_life
king_of_kings
lcbc
liquid_church
newspring
oakcliff
real_life
river_valley
try_grace
willow_creek
woodmen
ymca_gc

Dependents (0)

Package Sidebar

Install

npm i @apollosproject/apollos-embeds

Weekly Downloads

137

Version

0.2.25

License

MIT

Unpacked Size

6.9 MB

Total Files

30

Last publish

Collaborators

  • yungvincenzo
  • conrad_vanl
  • redreceipt
  • didevshop
  • apollosadmin
  • nathanlewis.differential