Missing these from earlier commit

This commit is contained in:
Hieuhuy Pham 2025-01-12 21:37:18 -05:00
parent 418b3e4a3f
commit cea7376e48
2 changed files with 45 additions and 0 deletions

40
src/app/api/feed/route.ts Normal file
View File

@ -0,0 +1,40 @@
import { NextResponse } from "next/server";
import RSS from "rss";
import { subDays } from "date-fns";
import { fetchChaptersRSS } from "@/lib/api";
import { Chapter } from "@/lib/types";
const BASE_URL = process.env.BASE_URL || "http://localhost:3000";
export async function GET(){
const now = new Date();
const yesterday = subDays(now, 1);
const data = await fetchChaptersRSS();
const feed = new RSS({
title: "Null Translation Group",
description: "Null Translation Group main hub",
site_url: BASE_URL,
feed_url: `${BASE_URL}/api/feed`,
language: "en",
});
data.forEach((chapter: Chapter) => {
feed.item({
title: chapter.book?.title + " - Chapter " + chapter.number + " " + chapter.title,
description: "Daily chapter release for " + chapter.book?.title,
url: `${BASE_URL}/books/${chapter.book?.documentId}/chapters/${chapter.documentId}`,
date: chapter.release_datetime,
});
});
const xml = feed.xml({ indent: true });
return new Response(xml, {
headers: {
"Content-Type": "application/xml",
},
});
}

5
src/app/feed/page.tsx Normal file
View File

@ -0,0 +1,5 @@
import { redirect } from 'next/navigation';
export default function FeedRedirect() {
redirect('/api/feed');
}