ampproject / ampproject/amphtml

I2D integration.js/f.js for 3p iframe

Open
#35,349 2 comments 0 reactions 0 assignees View on GitHub
INTENT TO DEPRECATE Stale
Dominant language
JavaScript
Stars
14.9k
Forks
4.1k
PR merge metrics
No merged PRs in 30d

Description

### Summary

We wish to change to not make available integration.js/f.js for purpose of 3p iframe bootstrapping.

### Motivation

f.js has been available for third party iframe users to bootstrap various ads or vendor iframe (eg facebook, twitter). To date, it is possible for publishers to host a custom remote.html https://github.com/ampproject/amphtml/blob/main/extensions/amp-ad/amp-ad.md#running-ads-from-a-custom-domain themselves, which references to f.js to bootstrap the ads iframe.

However, f.js has all 3p vendor bootstrapping code in one file, and is unnecessarily big. Since we have been starting to compile per-vendor js bootstrapping files, we would like publishers to change to use per-vendor js file instead of universal f.js to improve the performance, and relieve amp team from having to maintain f.js in the long run.

### Impact on Existing Users

Publishers who use `amp-3p-iframe-src` meta should check their own remote.html, and change the reference to `f.js` to whatever vendor they want to use. e.g if they want to use kargo, they should replace f.js with kargo.js

### Alternative Implementation

n/a

### Additional Context

_No response_

### Notifications

/cc @ampproject/wg-approvers @ampproject/wg-monetization

Contributor guide

Open the contributing guide

Research direction

Start by reading the amp-ad custom-domain documentation and the current references to integration.js and f.js used with the amp-3p-iframe-src meta. Trace how the per-vendor JavaScript files are produced and consumed. Done means the universal bootstrap files are no longer offered for this use case and the migration guidance points publishers to the appropriate vendor file.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
performance, web-dev
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.