1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import { email } from "https://esm.town/v/std/email?v=9";
import { hnEmail } from "https://esm.town/v/rodrigotello/hnEmail?v=14";
import { hnLatestPosts } from "https://esm.town/v/stevekrouse/hnLatestPosts";
export const hnFollowApp = function (authors: string[], tags = ["story", "comment"]) {
return async function ({ lastRunAt }) {
let posts = await hnLatestPosts({
authors,
lastSyncTime: lastRunAt,
search_by_date: true,
tags: tags.join(","),
});
let { html, subject } = await hnEmail({ posts });
if (posts.length)
return email({ html, subject });
};
};
// Forked from @rodrigotello.hnFollowApp
👆 This is a val. Vals are TypeScript snippets of code, written in the browser and run on our servers. Create scheduled functions, email yourself, and persist small pieces of data — all from the browser.