Add mastodon archive plugin.

This commit is contained in:
天クマ 2026-07-04 16:01:48 -03:00
commit 2a68ab9964
4 changed files with 113 additions and 0 deletions

89
.cache/mastodon.json Normal file
View file

@ -0,0 +1,89 @@
{
"lastFetched": "2026-07-04T19:01:13.775Z",
"posts": [
{
"date": "2026-07-03T01:51:37.604Z",
"id": "116853538658966225",
"content": "<p>So about the <a href=\"https://mstdn.social/tags/digitalcircus\" class=\"mention hashtag\" rel=\"tag\">#<span>digitalcircus</span></a> finale.</p><p>They made me cry tears I&#39;ve been holding for long. The way this EP dealed with supressed emotions and coping with the pain of what&#39;s unchangeable, unfixable; communicated deeply with me. It&#39;s funny I cried laughing in realization of how warm and clever this goodbye was.</p><p>It&#39;s the best bittersweet ending I could ever wish for the show.</p><p>OH GOD the part they tell Jax is doing okay. You can&#39;t hit my heart harder than that 😭😭😭</p>",
"source_url": "https://mstdn.social/@tenkuma/116853538658966225",
"site": "Mastodon",
"media": [],
"emojis": []
},
{
"date": "2026-07-01T22:04:13.252Z",
"id": "116846982152346064",
"content": "<p>if I wanted shit there&#39;s a shit generator at chat.openai.com</p>",
"source_url": "https://mstdn.social/@tenkuma/116846982152346064",
"site": "Mastodon",
"media": [],
"emojis": []
},
{
"date": "2025-07-08T21:40:54.760Z",
"id": "114819783377460165",
"content": "<p>I love how ya&#39;ll humans give grades for vulnerabilities</p><p><span class=\"h-card\" translate=\"no\"><a href=\"https://infosec.exchange/@cR0w\" class=\"u-url mention\">@<span>cR0w</span></a></span> <a href=\"https://infosec.exchange/@cR0w/114819777669875206\" target=\"_blank\" rel=\"nofollow noopener\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">infosec.exchange/@cR0w/1148197</span><span class=\"invisible\">77669875206</span></a></p>",
"source_url": "https://mstdn.social/@tenkuma/114819783377460165",
"site": "Mastodon",
"media": [],
"emojis": []
},
{
"date": "2025-07-07T22:42:45.377Z",
"id": "114814364246016516",
"content": "<p>Another level of nostalgia playing Roblox on Linux with Sober! Plus wearing that Linux t-shirt just feels right. Good times...</p><p><a href=\"https://mstdn.social/tags/RobloxSober\" class=\"mention hashtag\" rel=\"tag\">#<span>RobloxSober</span></a></p>",
"source_url": "https://mstdn.social/@tenkuma/114814364246016516",
"site": "Mastodon",
"media": [
{
"image": "https://media.mstdn.social/media_attachments/files/114/814/350/913/893/408/original/a0c9e5a52e282587.png",
"alt": null,
"width": 640,
"height": 360,
"aspect": 1.7777777777777777
}
],
"emojis": []
},
{
"date": "2025-07-01T09:12:57.603Z",
"id": "114777206135368914",
"content": "<p>Meet Pete the cat :baba_baba:</p><p>He is as sleepy as I am.</p>",
"source_url": "https://mstdn.social/@tenkuma/114777206135368914",
"site": "Mastodon",
"media": [
{
"image": "https://media.mstdn.social/media_attachments/files/114/777/200/647/969/908/original/203ba60ae84a96cb.jpg",
"alt": "Black and white cat lying in a sofa.",
"width": 554,
"height": 415,
"aspect": 1.3349397590361445
}
],
"emojis": [
{
"shortcode": "baba_baba",
"url": "https://media.mstdn.social/custom_emojis/images/000/641/966/static/8d71b7179d1a7445.png"
}
]
},
{
"date": "2025-06-29T03:15:31.767Z",
"id": "114764476040214757",
"content": "<p><span class=\"h-card\" translate=\"no\"><a href=\"https://infosec.exchange/@cR0w\" class=\"u-url mention\">@<span>cR0w</span></a></span> this guy bio is just impeccable.</p>",
"source_url": "https://mstdn.social/@tenkuma/114764476040214757",
"site": "Mastodon",
"media": [],
"emojis": []
},
{
"date": "2025-06-10T21:32:12.812Z",
"id": "114661204480015822",
"content": "<p>Hello, world.</p>",
"source_url": "https://mstdn.social/@tenkuma/114661204480015822",
"site": "Mastodon",
"media": [],
"emojis": []
}
]
}

View file

@ -8,6 +8,7 @@ import recentChanges from "eleventy-plugin-recent-changes";
import Webmentions from "eleventy-plugin-webmentions"; // configure later
import pluginInlineLinkFavicon from "eleventy-plugin-inline-link-favicon";
import poison from "eleventy-plugin-poison";
import mastoarchive from "eleventy-plugin-mastoarchive";
// import i18n from "./_data/i18n.js";
@ -21,6 +22,11 @@ export default function (eleventyConfig) {
});
eleventyConfig.addPlugin(pluginInlineLinkFavicon);
eleventyConfig.addPlugin(poison);
eleventyConfig.addPlugin(mastoarchive, {
host: "https://mstdn.social",
userId: "114661188739031987",
cacheLocation: ".cache/mastodon.json"
});
eleventyConfig.addCollection("post", function (collectionApi) {
return collectionApi

17
package-lock.json generated
View file

@ -13,6 +13,7 @@
"@sardine/eleventy-plugin-external-links": "^1.4.0",
"eleventy-plugin-git-commit-date": "^1.0.2",
"eleventy-plugin-inline-link-favicon": "^1.1.0",
"eleventy-plugin-mastoarchive": "^0.2.0",
"eleventy-plugin-poison": "^1.0.1",
"eleventy-plugin-recent-changes": "^1.0.1",
"eleventy-plugin-webmentions": "^2.1.0"
@ -371,6 +372,16 @@
"integrity": "sha512-ZhzQ9WYwhrHBGHv1fBwK1y2QYYJt8jX4oUL3jB82AWCv03WpiMBK77OIJcGBo7XQdo4gIm6oPQZ8tG/150ApeA==",
"license": "MIT"
},
"node_modules/eleventy-plugin-mastoarchive": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/eleventy-plugin-mastoarchive/-/eleventy-plugin-mastoarchive-0.2.0.tgz",
"integrity": "sha512-NYSx9yQxTcaA2mn1GVA3tfArqJoAI5YhOKU/GFCAEhRZv26GPmRGtlD7jAqPVIS68wEpUDlgh9WacHOPEWDY7w==",
"license": "ISC",
"dependencies": {
"lodash": "^4.17.21",
"node-fetch": "^2.6.9"
}
},
"node_modules/eleventy-plugin-poison": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/eleventy-plugin-poison/-/eleventy-plugin-poison-1.0.1.tgz",
@ -517,6 +528,12 @@
"uhyphen": "^0.1.0"
}
},
"node_modules/lodash": {
"version": "4.18.1",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz",
"integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==",
"license": "MIT"
},
"node_modules/ms": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",

View file

@ -17,6 +17,7 @@
"@sardine/eleventy-plugin-external-links": "^1.4.0",
"eleventy-plugin-git-commit-date": "^1.0.2",
"eleventy-plugin-inline-link-favicon": "^1.1.0",
"eleventy-plugin-mastoarchive": "^0.2.0",
"eleventy-plugin-poison": "^1.0.1",
"eleventy-plugin-recent-changes": "^1.0.1",
"eleventy-plugin-webmentions": "^2.1.0"