Skip to content


Val Town can both parse and generate RSS feeds for blogs and other updated sources.

Polling RSS

You would run this example in val town as a Scheduled val that ran on a regular interval, and it would check a blog’s feed every 15 minutes.

Polling exampleRun in Val Town ↗
import { email } from "";
import { newRSSItems } from "";
import { rssFeeds } from "";
export async function pollRSSFeeds({ lastRunAt }: Interval) {
return Promise.all(
Object.entries(rssFeeds).map(async ([name, url]) => {
let items = await newRSSItems({
if (items.length)
await email({
text: JSON.stringify(items, null, 2),
subject: `New from ${name} RSS`,
return { name, items };

Creating RSS