diff --git a/package-lock.json b/package-lock.json
index 0ffc65e7..c0035355 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "coryd.dev",
- "version": "21.8.1",
+ "version": "21.8.2",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "coryd.dev",
- "version": "21.8.1",
+ "version": "21.8.2",
"license": "MIT",
"dependencies": {
"@cdransf/api-text": "^1.4.0",
diff --git a/package.json b/package.json
index 56ee4525..5eb51595 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "coryd.dev",
- "version": "21.8.1",
+ "version": "21.8.2",
"description": "The source for my personal site. Built using 11ty (and other tools).",
"type": "module",
"scripts": {
diff --git a/src/assets/xsl/feed.xsl b/src/assets/xsl/feed.xsl
deleted file mode 100644
index b1ca711e..00000000
--- a/src/assets/xsl/feed.xsl
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/includes/partials/feeds/json.liquid b/src/includes/partials/feeds/json.liquid
new file mode 100644
index 00000000..0ec36294
--- /dev/null
+++ b/src/includes/partials/feeds/json.liquid
@@ -0,0 +1,21 @@
+{
+ "version": "https://jsonfeed.org/version/1",
+ "title": "{{ title }}",
+ "home_page_url": "{{ permalink | absoluteUrl: globals.url }}",
+ "feed_url": "{{ permalink | absoluteUrl: globals.url }}.json",
+ "description": "{{ description }}",
+ "icon": "https://cdn.coryd.dev/{{ globals.feed_image }}?class=w200&v={% appVersion %}",
+ "favicon": "https://cdn.coryd.dev/{{ globals.favicon_ico }}?class=w50&v={% appVersion %}",
+ "items": [
+ {%- assign entries = data | normalizeEntries: 20 -%}
+ {%- for entry in entries -%}
+ {
+ "id": "{{ entry.url | encodeAmp }}",
+ "url": "{{ entry.url | encodeAmp }}",
+ "title": "{{ entry.title | escape }}{%- if entry.authors %} via {{ entry.authors.name }}{%- endif %}{%- if entry.rating %} ({{ entry.rating }}){%- endif %}",
+ "content_text": "{{ entry.excerpt | escape }}",
+ "date_published": "{{ entry.date | stringToRFC822Date }}"
+ }{%- if forloop.last == false %},{%- endif -%}
+ {%- endfor %}
+ ]
+}
\ No newline at end of file
diff --git a/src/includes/partials/feeds/rss.liquid b/src/includes/partials/feeds/rss.liquid
index 4030f601..4a72b6f1 100644
--- a/src/includes/partials/feeds/rss.liquid
+++ b/src/includes/partials/feeds/rss.liquid
@@ -10,7 +10,7 @@
{{ title }}
{{ permalink | absoluteUrl: globals.url }}
- https://cdn.coryd.dev/{{ globals.feed_image }}
+ https://cdn.coryd.dev/{{ globals.feed_image }}?class=w200&v={% appVersion %}
144
144
diff --git a/src/pages/feeds/json/all.liquid b/src/pages/feeds/json/all.liquid
new file mode 100644
index 00000000..47c39bf0
--- /dev/null
+++ b/src/pages/feeds/json/all.liquid
@@ -0,0 +1,13 @@
+---
+layout: null
+eleventyExcludeFromCollections: true
+permalink: "/feeds/all.json"
+---
+{% render "partials/feeds/json.liquid"
+ permalink:"/feeds/all"
+ title:"Cory Dransfeldt: all activity"
+ description:"All of the posts and activity from my site."
+ data:collections.allContent
+ updated:collections.allContent[0].date
+ site:site
+%}
\ No newline at end of file
diff --git a/src/pages/feeds/json/books.liquid b/src/pages/feeds/json/books.liquid
new file mode 100644
index 00000000..5154477c
--- /dev/null
+++ b/src/pages/feeds/json/books.liquid
@@ -0,0 +1,14 @@
+---
+layout: null
+eleventyExcludeFromCollections: true
+permalink: "/feeds/books.json"
+---
+{%- assign bookData = books.all | bookStatus: 'finished' | bookSortDescending -%}
+{% render "partials/feeds/json.liquid"
+ permalink:"/feeds/books"
+ title:"Cory Dransfeldt: books"
+ description:"Books I'm currently reading."
+ data:bookData
+ updated:bookData[0].date
+ site:site
+%}
\ No newline at end of file
diff --git a/src/pages/feeds/json/feed.liquid b/src/pages/feeds/json/feed.liquid
new file mode 100644
index 00000000..b6f4c28a
--- /dev/null
+++ b/src/pages/feeds/json/feed.liquid
@@ -0,0 +1,13 @@
+---
+layout: null
+eleventyExcludeFromCollections: true
+permalink: "/feeds/posts.json"
+---
+{% render "partials/feeds/json.liquid"
+ permalink:"/feeds/posts"
+ title:"Cory Dransfeldt"
+ description:"Posts from my site."
+ data:posts
+ updated:posts[0].date
+ site:site
+%}
\ No newline at end of file
diff --git a/src/pages/feeds/json/links.liquid b/src/pages/feeds/json/links.liquid
new file mode 100644
index 00000000..2862bee5
--- /dev/null
+++ b/src/pages/feeds/json/links.liquid
@@ -0,0 +1,13 @@
+---
+layout: null
+eleventyExcludeFromCollections: true
+permalink: "/feeds/links.json"
+---
+{% render "partials/feeds/json.liquid"
+ permalink:"/feeds/links"
+ title:"Cory Dransfeldt: links"
+ description:"Links I've liked."
+ data:links
+ updated:links[0].date
+ site:site
+%}
\ No newline at end of file
diff --git a/src/pages/feeds/json/movies.liquid b/src/pages/feeds/json/movies.liquid
new file mode 100644
index 00000000..5b3f99df
--- /dev/null
+++ b/src/pages/feeds/json/movies.liquid
@@ -0,0 +1,13 @@
+---
+layout: null
+eleventyExcludeFromCollections: true
+permalink: "/feeds/movies.json"
+---
+{% render "partials/feeds/json.liquid"
+ permalink:"/feeds/movies"
+ title:"Cory Dransfeldt: movies"
+ description:"Movies I've watched recently."
+ data:movies.recentlyWatched
+ updated:movies.recentlyWatched[0].lastWatched
+ site:site
+%}
\ No newline at end of file
diff --git a/src/pages/feeds/all.liquid b/src/pages/feeds/rss/all.liquid
similarity index 100%
rename from src/pages/feeds/all.liquid
rename to src/pages/feeds/rss/all.liquid
diff --git a/src/pages/feeds/books.liquid b/src/pages/feeds/rss/books.liquid
similarity index 100%
rename from src/pages/feeds/books.liquid
rename to src/pages/feeds/rss/books.liquid
diff --git a/src/pages/feeds/feed.liquid b/src/pages/feeds/rss/feed.liquid
similarity index 100%
rename from src/pages/feeds/feed.liquid
rename to src/pages/feeds/rss/feed.liquid
diff --git a/src/pages/feeds/links.liquid b/src/pages/feeds/rss/links.liquid
similarity index 100%
rename from src/pages/feeds/links.liquid
rename to src/pages/feeds/rss/links.liquid
diff --git a/src/pages/feeds/movies.liquid b/src/pages/feeds/rss/movies.liquid
similarity index 100%
rename from src/pages/feeds/movies.liquid
rename to src/pages/feeds/rss/movies.liquid