diff --git a/README.md b/README.md
index b9bcd83..55e8d9f 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,4 @@
# Leganto
-[![Weblate project translated](https://img.shields.io/weblate/progress/leganto?color=ef9f76&logo=weblate&logoColor=ef9f76&server=https%3A%2F%2Fi18n.ludoviko.ch&style=for-the-badge&labelColor=414559)](https://i18n.ludoviko.ch/projects/leganto/leganto-web/)
-An RSS reader.
+[![Weblate project translated](https://img.shields.io/weblate/progress/leganto?color=ef9f76&logo=weblate&logoColor=ef9f76&server=https%3A%2F%2Fi18n.ludoviko.ch&style=for-the-badge&labelColor=414559)](https://i18n.ludoviko.ch/projects/leganto/leganto-web/)
+An RSS reader.
+See [leganto-apple](https://git.ludoviko.ch/leganto/leganto-apple) for the iOS/iPadOS/macOS app.
\ No newline at end of file
diff --git a/package.json b/package.json
index 4b2720b..f66bdb9 100644
--- a/package.json
+++ b/package.json
@@ -26,6 +26,7 @@
"postcss": "8.4.24",
"prettier": "^2.8.0",
"prettier-plugin-svelte": "^2.8.1",
+ "prettier-plugin-tailwindcss": "0.3.0",
"svelte": "^3.59.1",
"svelte-check": "^3.0.1",
"tailwindcss": "3.3.2",
@@ -34,5 +35,8 @@
"vite": "^4.3.0",
"vitest": "^0.25.3"
},
- "type": "module"
+ "type": "module",
+ "dependencies": {
+ "rss-parser": "3.13.0"
+ }
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f1b0280..7b3b0b2 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -4,6 +4,11 @@ settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
+dependencies:
+ rss-parser:
+ specifier: 3.13.0
+ version: 3.13.0
+
devDependencies:
'@fontsource/fira-mono':
specifier: ^4.5.10
@@ -47,6 +52,9 @@ devDependencies:
prettier-plugin-svelte:
specifier: ^2.8.1
version: 2.8.1(prettier@2.8.0)(svelte@3.59.1)
+ prettier-plugin-tailwindcss:
+ specifier: 0.3.0
+ version: 0.3.0(prettier-plugin-svelte@2.8.1)(prettier@2.8.0)
svelte:
specifier: ^3.59.1
version: 3.59.1
@@ -925,6 +933,10 @@ packages:
resolution: {integrity: sha512-5VXLW4Qw89vM2WTICHua/y8v7fKGDRVa2VPOtBB9IpLvW316B+xd8yD1wTmLPY2ot/00P/qt87xdolj4aG/Lzg==}
dev: true
+ /entities@2.2.0:
+ resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
+ dev: false
+
/es6-promise@3.3.1:
resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
dev: true
@@ -1973,6 +1985,62 @@ packages:
svelte: 3.59.1
dev: true
+ /prettier-plugin-tailwindcss@0.3.0(prettier-plugin-svelte@2.8.1)(prettier@2.8.0):
+ resolution: {integrity: sha512-009/Xqdy7UmkcTBpwlq7jsViDqXAYSOMLDrHAdTMlVZOrKfM2o9Ci7EMWTMZ7SkKBFTG04UM9F9iM2+4i6boDA==}
+ engines: {node: '>=12.17.0'}
+ peerDependencies:
+ '@ianvs/prettier-plugin-sort-imports': '*'
+ '@prettier/plugin-pug': '*'
+ '@shopify/prettier-plugin-liquid': '*'
+ '@shufo/prettier-plugin-blade': '*'
+ '@trivago/prettier-plugin-sort-imports': '*'
+ prettier: '>=2.2.0'
+ prettier-plugin-astro: '*'
+ prettier-plugin-css-order: '*'
+ prettier-plugin-import-sort: '*'
+ prettier-plugin-jsdoc: '*'
+ prettier-plugin-marko: '*'
+ prettier-plugin-organize-attributes: '*'
+ prettier-plugin-organize-imports: '*'
+ prettier-plugin-style-order: '*'
+ prettier-plugin-svelte: '*'
+ prettier-plugin-twig-melody: '*'
+ peerDependenciesMeta:
+ '@ianvs/prettier-plugin-sort-imports':
+ optional: true
+ '@prettier/plugin-pug':
+ optional: true
+ '@shopify/prettier-plugin-liquid':
+ optional: true
+ '@shufo/prettier-plugin-blade':
+ optional: true
+ '@trivago/prettier-plugin-sort-imports':
+ optional: true
+ prettier-plugin-astro:
+ optional: true
+ prettier-plugin-css-order:
+ optional: true
+ prettier-plugin-import-sort:
+ optional: true
+ prettier-plugin-jsdoc:
+ optional: true
+ prettier-plugin-marko:
+ optional: true
+ prettier-plugin-organize-attributes:
+ optional: true
+ prettier-plugin-organize-imports:
+ optional: true
+ prettier-plugin-style-order:
+ optional: true
+ prettier-plugin-svelte:
+ optional: true
+ prettier-plugin-twig-melody:
+ optional: true
+ dependencies:
+ prettier: 2.8.0
+ prettier-plugin-svelte: 2.8.1(prettier@2.8.0)(svelte@3.59.1)
+ dev: true
+
/prettier@2.8.0:
resolution: {integrity: sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==}
engines: {node: '>=10.13.0'}
@@ -2055,6 +2123,13 @@ packages:
fsevents: 2.3.2
dev: true
+ /rss-parser@3.13.0:
+ resolution: {integrity: sha512-7jWUBV5yGN3rqMMj7CZufl/291QAhvrrGpDNE4k/02ZchL0npisiYYqULF71jCEKoIiHvK/Q2e6IkDwPziT7+w==}
+ dependencies:
+ entities: 2.2.0
+ xml2js: 0.5.0
+ dev: false
+
/run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
dependencies:
@@ -2077,6 +2152,10 @@ packages:
rimraf: 2.7.1
dev: true
+ /sax@1.2.4:
+ resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==}
+ dev: false
+
/semver@7.5.1:
resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==}
engines: {node: '>=10'}
@@ -2595,6 +2674,19 @@ packages:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
dev: true
+ /xml2js@0.5.0:
+ resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
+ engines: {node: '>=4.0.0'}
+ dependencies:
+ sax: 1.2.4
+ xmlbuilder: 11.0.1
+ dev: false
+
+ /xmlbuilder@11.0.1:
+ resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
+ engines: {node: '>=4.0'}
+ dev: false
+
/yallist@4.0.0:
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
dev: true
diff --git a/prettier.config.js b/prettier.config.js
new file mode 100644
index 0000000..3be34cb
--- /dev/null
+++ b/prettier.config.js
@@ -0,0 +1,10 @@
+module.exports = {
+ trailingComma: 'es5',
+ tabWidth: 4,
+ semi: true,
+ singleQuote: true,
+ printWidth: 80,
+ arrowParens: 'avoid',
+ plugins: [require('prettier-plugin-tailwindcss'), require('prettier-plugin-svelte')],
+ insertPragma: true,
+};
\ No newline at end of file
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index f25e15f..e8b11b2 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -1,4 +1,5 @@
@@ -7,5 +8,7 @@
diff --git a/src/routes/FeedItem.svelte b/src/routes/FeedItem.svelte
index 91c44ff..9108929 100644
--- a/src/routes/FeedItem.svelte
+++ b/src/routes/FeedItem.svelte
@@ -1,3 +1,7 @@