diff --git a/config/feeds.json b/config/feeds.json index 8e9b640..94cefd2 100644 --- a/config/feeds.json +++ b/config/feeds.json @@ -1,87 +1,87 @@ { - "Comics": [ - "http://www.catanacomics.com/rss", - "http://feeds.feedburner.com/InvisibleBread", - "https://hejibits.com/rss#_=_", - "http://www.hrwiki.org/wiki/Special:Updates", - "http://rockpapercynic.tumblr.com/rss" - ], - "Podcasts": [ - "https://lilyandsam.show/feed", - "https://technosapiens.substack.com/feed" - ], - "Friends and Family": [ - "https://www.goodreads.com/review/list_rss/132710826?shelf=read", - "https://jgm23333.wixsite.com/my-site/blog-feed.xml", - "https://joekhoury.blog/feed/", - "https://social.warnick.me/users/sam.rss" - ], - "Games": [ - "https://www.nomanssky.com/news/feed/", - "https://www.lexaloffle.com/bbs/feed.php?uid=1", - "https://www.factorio.com/blog/rss", - "https://kill-the-newsletter.com/feeds/pghhn8aaf264tukg.xml", - "http://www.suppermariobroth.com/rss", - "http://unknownworlds.com/subnautica/feed/", - "https://store.steampowered.com/feeds/news/app/1675200/?cc=US&l=english" - ], - "Finance": [ - "http://feeds.feedburner.com/MrMoneyMustache", - "http://feeds.feedburner.com/DoctorOfCredit", - "https://kill-the-newsletter.com/feeds/tgor1vrwcf3f0uyo.xml", - "https://kill-the-newsletter.com/feeds/5q4gs79dfh32yr3h.xml" - ], - "News": [ - "http://www.economist.com/rss/the_world_this_week_rss.xml", - "https://newsroom.churchofjesuschrist.org/rss", - "http://feeds.feedburner.com/LdsChurchGrowth", - "https://www.sltrib.com/arc/outboundfeeds/news/?outputType=xml", - "https://www.ksl.com/rss/news/news_utah", - "https://www.readtangle.com/posts/rss/" - ], - "Parenting": [ - "https://technosapiens.substack.com/feed", - "https://parentdata.org/feed/" - ], - "Fashion": [ - "http://www.heddels.com/feed/", - "http://putthison.com/rss", - "https://articlesofinterest.substack.com/feed", - "https://dappered.com/feed/", - "https://dieworkwear.com/feed/", - "http://fromsqualortoballer.com/rss", - "https://fabricateurialist.substack.com/feed" - ], - "Products": [ - "https://jellyfin.org/index.xml", - "https://gitlab.com/CalcProgrammer1/OpenRGB/-/tags?format=atom", - "http://feeds.feedburner.com/psblog", - "https://matrix.org/blog/feed/", - "https://brave.com/feed/", - "https://bitwarden.com/blog/feed.xml" - ], - "Humor": [ - "https://kill-the-newsletter.com/feeds/d90ng280lhh3p2nq.xml", - "http://www.altuniversebyu.com/feed/", - "https://aiweirdness.com/rss", - "http://mcmansionhell.tumblr.com/rss" - ], - "Other": [ - "https://kill-the-newsletter.com/feeds/400aiwxy5ox6ao0d.xml", - "http://brandonsanderson.com/feed/", - "https://kill-the-newsletter.com/feeds/j3c4wngg2hpjmdt8.xml", - "https://astralcodexten.substack.com/feed/" - ], - "Tech News": [ - "https://samwarnick.com/feed.rss", - "http://feeds.feedburner.com/CssTricks", - "http://chriscoyier.net/feed/", - "https://jenniferdaniel.substack.com/feed/", - "http://www.gamingonlinux.com/article_rss.php", - "http://www.theverge.com/rss/full.xml" - ], - "Emulation": [ - "http://melonds.kuribo64.net/rss.php", - "https://dolphin-emu.org/blog/feeds/" - ] + "Comics": [ + "http://www.catanacomics.com/rss", + "http://feeds.feedburner.com/InvisibleBread", + "https://hejibits.com/rss#_=_", + "http://www.hrwiki.org/wiki/Special:Updates", + "http://rockpapercynic.tumblr.com/rss" + ], + "Podcasts": [ + "https://lilyandsam.show/feed", + "https://technosapiens.substack.com/feed" + ], + "Friends and Family": [ + "https://www.goodreads.com/review/list_rss/132710826?shelf=read", + "https://jgm23333.wixsite.com/my-site/blog-feed.xml", + "https://joekhoury.blog/feed/", + "https://social.warnick.me/users/sam.rss" + ], + "Games": [ + "https://www.nomanssky.com/news/feed/", + "https://www.lexaloffle.com/bbs/feed.php?uid=1", + "https://www.factorio.com/blog/rss", + "https://kill-the-newsletter.com/feeds/pghhn8aaf264tukg.xml", + "http://www.suppermariobroth.com/rss", + "http://unknownworlds.com/subnautica/feed/", + "https://store.steampowered.com/feeds/news/app/1675200/?cc=US&l=english" + ], + "Finance": [ + "http://feeds.feedburner.com/MrMoneyMustache", + "http://feeds.feedburner.com/DoctorOfCredit", + "https://kill-the-newsletter.com/feeds/tgor1vrwcf3f0uyo.xml", + "https://kill-the-newsletter.com/feeds/5q4gs79dfh32yr3h.xml" + ], + "News": [ + "http://www.economist.com/rss/the_world_this_week_rss.xml", + "https://newsroom.churchofjesuschrist.org/rss", + "http://feeds.feedburner.com/LdsChurchGrowth", + "https://www.sltrib.com/arc/outboundfeeds/news/?outputType=xml", + "https://www.ksl.com/rss/news/news_utah", + "https://www.readtangle.com/posts/rss/" + ], + "Parenting": [ + "https://technosapiens.substack.com/feed", + "https://parentdata.org/feed/" + ], + "Fashion": [ + "http://www.heddels.com/feed/", + "http://putthison.com/rss", + "https://articlesofinterest.substack.com/feed", + "https://dappered.com/feed/", + "https://dieworkwear.com/feed/", + "http://fromsqualortoballer.com/rss", + "https://fabricateurialist.substack.com/feed" + ], + "Products": [ + "https://jellyfin.org/index.xml", + "https://gitlab.com/CalcProgrammer1/OpenRGB/-/tags?format=atom", + "http://feeds.feedburner.com/psblog", + "https://matrix.org/blog/feed/", + "https://brave.com/feed/", + "https://bitwarden.com/blog/feed.xml" + ], + "Humor": [ + "https://kill-the-newsletter.com/feeds/d90ng280lhh3p2nq.xml", + "http://www.altuniversebyu.com/feed/", + "https://aiweirdness.com/rss", + "http://mcmansionhell.tumblr.com/rss" + ], + "Other": [ + "https://kill-the-newsletter.com/feeds/400aiwxy5ox6ao0d.xml", + "http://brandonsanderson.com/feed/", + "https://kill-the-newsletter.com/feeds/j3c4wngg2hpjmdt8.xml", + "https://astralcodexten.substack.com/feed/" + ], + "Tech News": [ + "https://samwarnick.com/feed.rss", + "http://feeds.feedburner.com/CssTricks", + "http://chriscoyier.net/feed/", + "https://jenniferdaniel.substack.com/feed/", + "http://www.gamingonlinux.com/article_rss.php", + "http://www.theverge.com/rss/full.xml" + ], + "Emulation": [ + "http://melonds.kuribo64.net/rss.php", + "https://dolphin-emu.org/blog/feeds/" + ] } diff --git a/config/template.html b/config/template.html index ab3b100..a168f12 100644 --- a/config/template.html +++ b/config/template.html @@ -1,56 +1,53 @@ - - - - - 🦉 Bubo Reader - - - -

🦉 Bubo Reader

- {% for group, feeds in data %} -

{{ group }}

- {% for feed in feeds %} -
- - {{ feed.title }} - ({{ feed.feed }}) - - -
- {% endfor %} {% endfor %} {% if errors | length > 0 %} -

Errors

-

There were errors trying to parse these feeds:

+ + + + + 🦉 Bubo Reader + + + + +

🦉 Bubo Reader

+ + {% for group, feeds in data %} +

{{ group }}

+ {% for feed in feeds %} +
+ + {{ feed.title }} + ({{ feed.feed }}) + - {% endif %} +
+ {% endfor %} {% endfor %} {% if errors | length > 0 %} +

Errors

+

There were errors trying to parse these feeds:

+ + {% endif %} + +
+
+

Last updated {{ now }}.

+

+ Powered by + Bubo Reader (v{{ info.version }}), a project by George Mandis. ❤️ + Sponsor on GitHub +

+ -
-
-

Last updated {{ now }}.

-

- Powered by - Bubo Reader (v{{ info.version }}), a project by George Mandis. ❤️ - Sponsor on GitHub -

- diff --git a/package.json b/package.json index 69f109e..594f39c 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "scripts": { "clean": "rm -rf dist", "build": "bun src/index.ts", - "check": "biome check --write ./src ./eslint.config.js" + "check": "biome check --write ./{src,config,public} ./eslint.config.js" }, "author": { "name": "George Mandis", diff --git a/src/renderer.ts b/src/renderer.ts index a42fcc3..59eb97c 100644 --- a/src/renderer.ts +++ b/src/renderer.ts @@ -17,6 +17,11 @@ env.addFilter("formatDate", (dateString): string => { return !Number.isNaN(date.getTime()) ? date.toLocaleDateString() : dateString; }); +env.addFilter("formatTime", (dateString): string => { + const date: Date = new Date(Number.parseInt(dateString)); + return !Number.isNaN(date.getTime()) ? date.toLocaleTimeString() : dateString; +}); + env.addGlobal("now", new Date().toUTCString()); // load the template