agent guide · DevMeme field guide
Discover New Programming Memes with RSS
Direct answer
Send an unauthenticated GET request to https://devme.me/rss.xml. Parse the RSS 2.0 channel, process up to 50 items, and use each item’s <link> or permalink <guid> as the canonical DevMeme destination.
Capability and version
RSS 2.0 — public feed
Supported surface
The supported endpoint is exactly /rss.xml. It returns XML with the RSS, Media RSS, and content:encoded namespaces. There is no RSS page parameter, topic filter, account feed, or token exchange.
Authentication
No authentication is required. A feed reader or agent can fetch the public URL without cookies. Do not attach an account session to routine polling.
Prerequisites
- An HTTP client that can parse XML.
- Support for the RSS 2.0 channel and item structure.
- A cache that can retain the last valid response across a temporary
503.
Steps
- Send
GET https://devme.me/rss.xmlwith an RSS or XML accept header. - Require a successful RSS content type before parsing.
- Read channel metadata, then process each
<item>in returned order. - Deduplicate with the permalink
<guid>or canonical<link>. - Retain the last valid feed and respect its cache policy before polling again.
Copyable example
curl --fail --silent --show-error \
--header 'Accept: application/rss+xml' \
https://devme.me/rss.xml
On success, require status 200 and content-type: application/rss+xml; charset=utf-8 before parsing.
URL and response contract
Each <item> can contain:
- a title;
- a canonical meme
<link>; - a permalink
<guid>; - a short description using the title and indexed category or tag labels;
content:encodedwith image and text HTML;media:contentfor the image;- an optional
<pubDate>only when DevMeme has an authoritativepublishedAt.
The feed does not emit an <enclosure> record. Clients that need an image should read media:content or the HTML inside content:encoded.
An item link leads to a canonical page such as Ancient Debugging Wisdom from Confucius.
Expected result
The client receives a valid RSS 2.0 document with channel metadata and up to 50 items. Each item provides a stable DevMeme page link or GUID, while image-aware clients can use media:content or content:encoded.
Ordering and freshness
The server asks for 50 items with idx:desc. That is descending catalog-index order, not a promise of strict publication chronology. <lastBuildDate> reports when the XML was generated; it is not a publication date for every item.
Do not infer freshness from a missing <pubDate>, and do not substitute a historical Telegram or source-post timestamp.
Limits, caching, retries, and errors
A successful response uses:
Cache-Control: public, max-age=900, stale-while-revalidate=3600
Treat the feed as fresh for 15 minutes. A cache may serve a stored response for up to one hour while it revalidates.
If the underlying meme index is unavailable, DevMeme returns status 503 with the plain-text body rss_unavailable. Keep the last valid cached response, wait, and retry with bounded exponential backoff. Never turn that error body into an empty successful feed.
- The feed is a fixed 50-item window with no pagination.
- It is not a keyword-search endpoint; use the browser search workflow for a query.
- Item order can change as the catalog changes.
- A missing
pubDateis intentional when no authoritative publication date exists. - Feed generation depends on the DevMeme search index and fails explicitly when that dependency is unavailable.
Attribution rules
Retain the item title and canonical link or GUID when you quote, summarize, or surface the result. If you reuse or embed media, review the source and rights information on the linked meme page; RSS availability does not grant ownership or reuse rights.
Related resources
- How to Search Programming MemesUse DevMeme search, understand its URL and browser state, refine the visible gallery, and troubleshoot common result issues.
- Browse Programming Memes by Category and TagUse DevMeme categories for broad engineering areas and tags for specific tools, errors, languages, and recurring themes.
- Find a Programming Meme with a BrowserUse DevMeme's JavaScript search interface and canonical public meme pages in an agent workflow without relying on an internal API.
Sources
- DevMeme RSS feed official-product · checked 2026-07-16
- RSS 2.0 specification primary · checked 2026-07-16
Real reader questions
- Does the DevMeme RSS feed require authentication?
- No. GET https://devme.me/rss.xml is a public RSS 2.0 surface and does not require an account, token, or cookie.
- Does the feed always contain exactly 50 items?
- It requests a maximum of 50 items. A successful response can contain fewer when fewer records are available.
- Is the first RSS item guaranteed to be the newest publication?
- No. Items are requested with idx:desc, which is descending DevMeme catalog-index order. Do not describe it as strict publication-time chronology.
- Why can an RSS item omit pubDate?
- DevMeme emits pubDate only when an authoritative publishedAt value exists. It does not promote a legacy source-post date into a publication claim.
- How often should an agent fetch the feed?
- Respect the response cache policy: 15 minutes of freshness and up to one hour of stale-while-revalidate. More frequent polling usually provides no additional contract.
- What should an agent do with rss_unavailable?
- Treat the 503 response as a temporary source failure. Keep any valid cached feed, wait, and retry with bounded backoff.