Works anywhere that renders HTML
< 6 kB
gzipped widget
0
runtime dependencies
6 h
automatic re-sync
MIT
licensed, forever free
Everything you need to embed Instagram feeds — nothing you don't.
Posts are fetched once and cached in Cloudflare KV. Visitors get sub-50ms responses from the nearest edge node.
A single <script> tag and a custom element. Under 6 kB gzipped, no framework runtime, Shadow DOM isolation.
Grid, masonry, or showcase layout. Adjust columns, gap, radius, hover effects, and background color — live preview included.
Runs on your own Cloudflare account. Your data, your keys, your domain. No third-party widget service.
Cron triggers refresh feeds on a schedule. New posts appear without manual intervention.
Plain HTML, WordPress, Shopify, Webflow, React, Vue, Next.js — if it renders HTML, it works.
Layouts
Columns, gaps, radius, hover effects and colors, all with a live preview in the dashboard.
Even rows and columns. The classic profile look.
Staggered heights that keep tall posts intact.
One hero post with a supporting strip beside it.
No OAuth tokens, no API keys in the browser, no framework lock-in.
Open the dashboard, enter an Instagram username, and configure the layout — grid, masonry, or showcase.
Adjust columns, gap, border radius, background color, hover effects, and card style in the visual editor.
Copy the two-line snippet and paste it into any HTML page. The widget loads in under 6 kB.
Compare
The same embeddable Instagram feed, without the subscription.
AlfsightA minimal REST API for managing feeds. Authenticated routes use a dev header locally.
/api/feeds/:idFetch feed metadata and posts (cached via KV)
/api/feedsCreate a new feed configuration
/api/feeds/:idUpdate feed settings
/api/feeds/:idRemove a feed
/api/feeds/:id/refreshTrigger manual feed sync
FAQ
Yes. The code is MIT licensed and runs on your own Cloudflare account. Small and medium sites usually fit within Cloudflare's free tier, so there is no monthly bill to pay.
No. Public profile data is fetched server-side through the OpenHandle API, so you only need an OpenHandle key (a free test key is available). No Instagram tokens ever reach the browser.
No. Alfsight only displays public profiles, the same posts anyone can see on Instagram.
A Cloudflare cron trigger re-syncs every feed every 6 hours, and you can trigger a manual sync from the dashboard at any time.
No. The widget is a web component rendered in Shadow DOM, so your styles don't leak in and its styles don't leak out.
Yes. Paste the two-line snippet into any HTML block or custom code embed. If the platform renders HTML, it works.

Fork the repo, deploy to Cloudflare and embed your first widget in minutes.