Show off your open-source PRs
open-source PRs anywhere
One <script> tag. Seven layouts. Fully themeable. Zero iframes, zero API keys, zero maintenance. Drop it on your blog, portfolio, or README and get a live widget of your merged contributions — styled to match your brand.
1// drop this anywhere on your page2<script src="https://embed.openembed.dev/v0/widget.js"3 data-user="aggmoulik"4 data-layout="list"5 data-theme="auto"6 defer></script>78// 19 KB gzipped · Shadow DOM · zero deps
No spam. One email when invites open. Unsubscribe anytime.
This is the widget. Rendering right now.
Same React component, same data shape, same Shadow DOM as what you'd embed. Real DOM nodes, real CSS isolation, real <300ms first paint.
aggmoulik / recent merged PRs
▲ list · lightPick the one that matches your site.
Content-first, screen-reader-friendly, and shipping in both light and dark out of the box. Switch with a single attribute change — no rebuild required.
A widget that respects your site, your visitors, and your bundle size.
Shadow DOM isolation
Widget ships its own styles inside a Shadow DOM. No CSS leaks in, no CSS leaks out — drop it into a Tailwind site, a Hugo blog, or a hand-written README without surprises.
Themes that match your brand
Pick any accent, background, border, or muted color. Per-token overrides mean the widget fits portfolios, docs sites, and dark-mode blogs alike — light, dark, or system mode follows your visitor's OS automatically.
Per-widget origin allowlist
Default-deny security. Declare exactly which domains can embed each widget — wildcards supported, leak alerts in your dashboard.
Live API or static export
Mode A: dynamic via the edge worker. Mode B: bake a JSON snapshot into your CI for zero-runtime, fully cacheable embeds.
Edge-deployed, <100 KB
Slim Cloudflare Worker (~96 KB gzipped) serves the live API. Widget itself stays under 19 KB gzipped on the wire.
No iframes, no tracking
Real DOM nodes you can style around. No third-party cookies, no analytics pings, no maintenance — and never any of your visitors' data.
Stop screenshotting your PRs.
Embed them.
Private beta is open. We're sending 200 invites a week to people on the waitlist.
A solo project by @aggmoulik · closed beta