explaingit

marcusbellamyshaw-cell/emdash-plugin-social-embed

Analysis updated 2026-05-18

3TypeScriptAudience · developerComplexity · 2/5LicenseSetup · easy

TLDR

An EmDash CMS plugin that lets editors embed social media posts by pasting a URL, fetching the embed server-side so platform scripts load only where needed.

Mindmap

mindmap
  root((repo))
    What it does
      Paste URL to embed post
      Server side oEmbed fetch
      Five supported platforms
    Tech stack
      TypeScript
      Astro
      Cloudflare Workers
    Use cases
      Embed YouTube or TikTok posts
      Speed up CMS pages
      Avoid client side API calls
    Audience
      Content editors
      CMS developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Let content editors embed YouTube, Vimeo, TikTok, Twitter, or Spotify posts by pasting a URL in EmDash.

USE CASE 2

Reduce page weight by only loading a platform's embed script on pages that actually use it.

USE CASE 3

Cache social embed lookups at Cloudflare's edge to avoid repeated oEmbed fetches.

What is it built with?

TypeScriptAstroCloudflare WorkersEmDash CMS

How does it compare?

marcusbellamyshaw-cell/emdash-plugin-social-embed000madz000/payload-test-api-route-handleraliansari22/pdfclear
Stars333
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasyeasyeasy
Complexity2/52/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires an existing EmDash CMS project built on Astro.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

This is a plugin for a content management system called EmDash, and it lets an editor embed a social media post just by pasting its URL. Instead of that post being fetched by the visitor's browser using each platform's own script, this plugin fetches the embed HTML on the server first, using a standard called oEmbed. That means no client-side API calls are needed, and the extra JavaScript each platform normally ships only loads on pages that actually contain that type of embed. It currently supports five platforms: YouTube, Vimeo, Twitter or X, Spotify, and TikTok, and none of them require you to sign up for developer credentials to use them. To install it, you add the package with npm and register it inside your Astro configuration file as a plugin. The README notes that it must be registered as a trusted, native plugin rather than a sandboxed one, because it ships its own Astro components to handle server-side rendering. Once installed, an editor working inside EmDash's Portable Text editor can type a slash command, choose Social Embed, and paste a post URL to insert it. For performance, the responses fetched through oEmbed are cached at Cloudflare's edge network for 24 hours, so repeated visits do not trigger a new fetch every time. The heavier platform scripts, like Twitter's widgets.js or TikTok's embed script, are only added to a page if that page actually contains a matching embed, and posts from YouTube, Vimeo, and Spotify render as plain iframes with no extra JavaScript at all. The project is released under the MIT license and the README credits it as designed by Marcus Shaw for a company called Every Bit Texas, with the code written by Claude Code.

Copy-paste prompts

Prompt 1
Show me how to install emdash-plugin-social-embed with npm and register it as a native plugin in astro.config.mjs.
Prompt 2
Explain why this plugin must be added to the native plugins list instead of the sandboxed list in EmDash.
Prompt 3
Walk me through embedding a TikTok post in EmDash's Portable Text editor using this plugin.

Frequently asked questions

What is emdash-plugin-social-embed?

An EmDash CMS plugin that lets editors embed social media posts by pasting a URL, fetching the embed server-side so platform scripts load only where needed.

What language is emdash-plugin-social-embed written in?

Mainly TypeScript. The stack also includes TypeScript, Astro, Cloudflare Workers.

What license does emdash-plugin-social-embed use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is emdash-plugin-social-embed to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is emdash-plugin-social-embed for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.