my website, hosted on wisp.place
at main 21 lines 592 B view raw
1import rss from "@astrojs/rss"; 2import { getCollection } from "astro:content"; 3import sanitizeHtml from "sanitize-html"; 4import MarkdownIt from "markdown-it"; 5const parser = new MarkdownIt(); 6 7export async function GET(context) { 8 const blog = await getCollection("blog"); 9 return rss({ 10 title: "devin's blog", 11 description: "hi, i'm devin! :)", 12 site: context.site, 13 items: blog.map((post) => ({ 14 link: `/blog/${post.slug}/`, 15 content: sanitizeHtml(parser.render(post.body), { 16 allowedTags: sanitizeHtml.defaults.allowedTags.concat(["img"]), 17 }), 18 ...post.data, 19 })), 20 }); 21}