The open-source alternative to Elfsight

Alfsight is a self-hosted Instagram feed widget. Embed beautiful, fast feeds on any website with one script tag. No subscription and no view limits.

Works anywhere that
renders HTML

  • WordPressCMS
  • ShopifyE-commerce
  • WebflowNo-code
  • Next.jsFramework

Your Instagram feed, embedded in two lines of code.

This is a live Alfsight widget, loaded from our own Cloudflare deployment.

gole.codes
Live
index.html
<!-- Alfsight embed -->
<instagram-feed
  feed="12dce34501db4d9a"
  api-base="https://api.manishtamang.com"
></instagram-feed>

<script
  src="https://alfsight-widget.manishtamang.com/instagram.iife.js"
  defer
></script>

This snippet renders the live feed above. Paste it anywhere in your HTML.

A workflow tuned for speed

Create, customize, embed and forget. Alfsight keeps your feed fresh on its own.

New widget

Connect a public Instagram profile.

Instagram username

@yourbrand
Create widget
1

Create a widget from any public Instagram username in seconds.

Layout

GridMasonryShowcase
Columns 4
Gap 16px
Captions
2

Customize the design with layouts, spacing and hover effects, live.

<instagram-feed
  feed="YOUR_FEED_ID"
></instagram-feed>
<script src="…/instagram.iife.js" defer></script>
3

Embed anywhere with a two-line snippet that works on any site.

Sync activity Live
  • CCronSynced 12 new posts06:00
  • CCacheFeed refreshed in KV06:00
  • MManualSynced 3 new posts09:42
4

Stay in sync automatically, with posts refreshed every 6 hours.

Everything you need to embed Instagram, nothing you don't.

Posts are fetched once and cached at the edge, so visitors get fast responses from the nearest data center.

Edge-cached feedsCloudflare KV

One script tag and a custom element. No framework runtime, with Shadow DOM keeping styles isolated.

Zero-dependency widgetUnder 6 kB gzipped
Alfsight

Free and open source, forever. MIT licensed, self-hosted on your own Cloudflare account, with every line of code yours to read and change.

MIT Licensegithub.com/Manish-Tamang/alfsight

Grid, masonry or showcase. Tune columns, gaps, radius, hover effects and colors and see every change instantly.

Visual editorLive preview

Your data, your keys, your domain. Nothing runs on a third-party widget service.

Self-hostedYour Cloudflare account

Cron triggers refresh every feed on a schedule, and you can sync manually from the dashboard any time.

Automatic syncCron every 6 hours

Plain HTML, WordPress, Shopify, Webflow, React, Vue or Next.js. If it renders HTML, it works.

Works everywhereAny HTML page

Pick a layout and tweak every pixel

Grid layout

Even rows and columns for the classic profile look. Pick 2 to 6 columns and any gap.

Masonry layout

Staggered heights that keep tall posts intact, for a magazine-style wall.

Showcase layout

One hero post with a supporting strip beside it, perfect for product launches.

Columns4
Gap16px
Radius8px
HoverZoom
Background #ebfbf1

Live editor

Every change previews instantly on desktop, tablet and mobile before you hit save.

Runs on your Cloudflare, worldwide

The API, widget and dashboard deploy to your own account. Feeds are cached at the edge and refreshed on a schedule.

  • < 6 kB widget
  • 6 h auto sync
  • KV edge cache
  • MIT licensed
  • Hono API on Workers

    A tiny, typed API that runs at the edge.

  • D1 database

    Feeds and posts live in Cloudflare's SQLite.

  • KV edge cache

    Feeds are served from cache, close to visitors.

  • Shadow DOM widget

    Your site's CSS never clashes with the feed.

  • Validated with Zod

    Every request body is checked before it's saved.

  • TypeScript end to end

    Shared types between API, widget and dashboard.

Everything Elfsight does, without the subscription or the view limits.

Elfsight

A hosted widget service you rent month to month.

Pricing

Paidplans per month

  • Monthly subscription for higher tiers
  • Widget views capped per plan
  • Elfsight branding on the free plan
  • Closed source
  • Data hosted on vendor servers
Hosted SaaS

Alfsight

Open source

A self-hosted widget service you own outright.

Pricing

$0forever, on Cloudflare's free tier for most sites

Everything you need, plus

  • Unlimited widgets and views
  • No third-party branding, ever
  • Open source under the MIT license
  • Your data in your own Cloudflare account
  • Shadow DOM widget under 6 kB gzipped
  • Automatic sync every 6 hours
Deploy your own

No subscription, no view caps, no lock-in. You only pay Cloudflare if you outgrow their free tier.

Need a hand self-hosting?

Follow the step-by-step deploy guide, or open an issue on GitHub and we'll help you get your first widget live.

Open an issue

Have questions? Browse the FAQs to find the answers you need.

Is Alfsight really free?
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.
Do I need an Instagram API token or OAuth?
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.
Can I show a private Instagram account?
No. Alfsight only displays public profiles, the same posts anyone can see on Instagram.
How often do new posts appear?
A Cloudflare cron trigger re-syncs every feed every 6 hours, and you can trigger a manual sync from the dashboard at any time.
Will the widget clash with my site's CSS?
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.
Does it work with WordPress, Shopify or Webflow?
Yes. Paste the two-line snippet into any HTML block or custom code embed. If the platform renders HTML, it works.

Didn't find your answer? Read the docs or open an issue on GitHub.

Let's get your feed live on your site in minutes.