1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
export async function tootLatestPosts({ lastRunAt }: Interval) {
return Promise.all(
(await stevekrouse.newRSSItems({
url: "https://sebastiandedeyne.com/index.xml",
lastRunAt,
}))
.slice(0, 2)
.map((item) =>
me.postToMastodon(
"https://mastodon.social/api/v1",
me.secrets.mastodonAccessToken,
`${item.title.charAt(0) === "↗" ? "🔗" : "✍️"} ${
item.title.replace("↗ ", "")
} ${item.link}`,
)
),
);
}
👆 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.
Blog context: https://sebastiandedeyne.com/auto-tooting-new-posts-with-val-town