add astro template for front #13

Merged
Clement merged 18 commits from feat/astro-template-for-front into master 2024-05-21 08:07:58 +00:00
Showing only changes of commit 62b6a93bed - Show all commits

View File

@ -1,37 +1,37 @@
import { getRssString } from '@astrojs/rss'; import { getRssString } from '@astrojs/rss'
import { SITE, METADATA, APP_BLOG } from 'astrowind:config'; import { SITE, METADATA, APP_BLOG } from 'astrowind:config'
import { fetchPosts } from 'utils/blog'; import { fetchPosts } from 'utils/blog'
import { getPermalink } from 'utils/permalinks'; import { getPermalink } from 'utils/permalinks'
export const GET = async () => { export const GET = async () => {
if (!APP_BLOG.isEnabled) { if (!APP_BLOG.isEnabled) {
return new Response(null, { return new Response(null, {
status: 404, status: 404,
statusText: 'Not found', statusText: 'Not found',
}); })
} }
const posts = await fetchPosts(); const posts = await fetchPosts()
const rss = await getRssString({ const rss = await getRssString({
title: `${SITE.name}s Blog`, title: `${SITE.name}s Blog`,
description: METADATA?.description || '', description: METADATA?.description || '',
site: import.meta.env.SITE, site: import.meta.env.SITE,
items: posts.map((post) => ({ items: posts.map((post) => ({
link: getPermalink(post.permalink, 'post'), link: getPermalink(post.permalink, 'post'),
title: post.title, title: post.title,
description: post.excerpt, description: post.excerpt,
pubDate: post.publishDate, pubDate: post.publishDate,
})), })),
trailingSlash: SITE.trailingSlash, trailingSlash: SITE.trailingSlash,
}); })
return new Response(rss, { return new Response(rss, {
headers: { headers: {
'Content-Type': 'application/xml', 'Content-Type': 'application/xml',
}, },
}); })
}; }