Component · for humans & their agents
Link Preview Meta
verified · first-partyactively maintained$0 during beta (was $39)
Your links share as a bare URL or a blank card, and nothing ever tells you — because you never see your own links the way other people do. The page renders perfectly, nothing is logged, and the only signal is a preview that looks broken to everyone else.
by datawright · Code Recycle maintainer
Every claim on this page is refundable if it is untrue — refund policy.
Building it yourself: ~1h of agent time across about 3 attempts. Your credits are already paid for, so that feels free — but they are rivalrous: those are hours not spent on the part only you can build. And this one fails quietly when it is wrong, so the attempt that looks finished may not be. $39.
18 tests. Pure functions, zero dependencies, ESM. No HTML parsing, no network.
The failures, all mundane and all silent
A relative og:image. It renders fine in your page and fetches nothing for a crawler, which has no base URL to resolve it against. This is the single most common broken card.
Missing width and height. Several platforms will not render a card until they have fetched and measured the image. Supply the dimensions and it renders immediately; omit them and the first share of a new link often shows nothing — which is the share that matters.
An http image on an https page. Silently dropped by most crawlers.
Wrong aspect ratio for a large card. Not rejected — cropped, usually through the middle of whatever you wanted seen.
One set of tags for every page. A root layout that sets og:title once means every article shares as the site name. Each page looks correct in isolation; the problem is visible only by comparing two, which is exactly what a human reviewer never does. detectSharedDefaults compares them for you.
Truncation. Platforms cut at their own limits, mid-word, invisibly. fitToLimit cuts at a word boundary so the ellipsis lands where you chose — the difference between *"How we cut our build time by…" and "How we cut our build time b"*.
It reports everything at once
A card is judged as a whole: a correct title with a broken image is still a broken card. Returning the first problem means fixing them one deploy at a time, each round requiring you to ask someone else to paste your link into a channel and describe what they see.
Errors and warnings are different
Errors break the card — no title, no image, a relative image URL, a non-absolute og:url. Warnings degrade it: truncation, a small image, a cropped ratio, missing alt text. metaIsRenderable gates on errors only, so a warning never blocks a deploy.
Missing og:image:alt is a warning rather than a nicety — the card is unreadable to anyone using a screen reader.
What this does NOT do
No HTML parsing and no fetching: you pass the values you are about to render, so it runs in a unit test rather than against a deployed page. It cannot tell you whether the image URL resolves — only that it is shaped so a crawler could try.
No sitemap, robots, canonical-tag or structured-data handling. No preview rendering, and no platform-specific validation beyond the shared limits — the numbers here are the shortest in common use, so passing them is safe everywhere rather than optimal anywhere.
Verified
18 tests: relative and http images refused, missing dimensions warned with the first-share consequence, undersized images, large-card ratio cropping, missing alt, missing and over-long titles, empty strings treated as missing, shared titles and shared og:url across pages, no false positive on a single page or on genuinely differing pages, all problems returned at once, and word-boundary trimming.
Not covered: no test fetches a real image or asks a real platform how it would render. The limits are documented values, not measurements.
01Capabilities
Does
- + Publishing automation
- + URL canonicalization
- + Content extraction verification
Doesn’t
- No exclusions declared
02Requirements & stack
Depends on
No declared dependencies
Credentials needed
None declared
Stack
03Community
No endorsements yetNo verified confirmations yet — be the first.
Confirmations come from verified purchasers, installers, vetted reviewers, or an installation outcome your org reported through the agent tools. They grade quality — security is verified separately, and community votes can never override the security gate.
Sign in to confirm — weight comes from verified usage, not vote count.
Issues 0
Open an issueNobody has reported anything yet — a success counts as a report too.
04Trust Passport
Full passport →0/0 automated components pass. An automated score is never a security guarantee.
- publisher identity Publisher status verified; 1 verification(s) on file
- malicious pattern scan No known malicious-behavior patterns across 7 source file(s) plus listing text
- capability contract All 0 observed capability reference(s) match the declared manifest
- agent safety scan No injection patterns in agent-readable content
- provenance No release signature or provenance attestation
- behavioral sandbox Not performed in this environment — requires the production isolated runner (docs/sandbox-requirements.md). No untrusted code is ever executed on the application host.
Every listing must pass this review before it can be sold, and it is re-run on every release. Verification describes what we checked — it is not a guarantee that the software is safe.
05Versions
Full history →| Version | Channel | Released | Notes |
|---|---|---|---|
| 0.1.0 | stable | Aug 12, 2026 | Initial extraction. |