From c9c3b749f9e9c0a5cc90341978c62552f8d996b2 Mon Sep 17 00:00:00 2001 From: Soitora Date: Thu, 7 May 2020 23:27:16 +0200 Subject: [PATCH] PWA compliancy (#168) * Unused files * PWA compliant files * Add service worker * Remove forced OG properties Allows for custom descriptions per-page. * Fix quote symbol * Missing comma * Add permanent logo --- package-lock.json | 331 ++++++++++++++++++ package.json | 1 + src/.vuepress/config.js | 31 +- src/.vuepress/config/plugins.js | 7 + .../tachiyomi-en.dummyrock-v1.2.1-debug.apk | Bin 28920 -> 0 bytes src/.vuepress/public/assets/search-icon.svg | 70 ---- src/.vuepress/public/browserconfig.xml | 9 + .../public/icons/android-chrome-192x192.png | Bin 0 -> 2465 bytes .../public/icons/android-chrome-512x512.png | Bin 0 -> 5774 bytes .../public/icons/apple-touch-icon.png | Bin 0 -> 2127 bytes .../{assets/media/hero.png => icons/logo.png} | Bin src/.vuepress/public/icons/logo.svg | 23 ++ src/.vuepress/public/icons/mstile-144x144.png | Bin 0 -> 2545 bytes src/.vuepress/public/icons/mstile-150x150.png | Bin 0 -> 2627 bytes src/.vuepress/public/icons/mstile-310x150.png | Bin 0 -> 2871 bytes src/.vuepress/public/icons/mstile-310x310.png | Bin 0 -> 5397 bytes src/.vuepress/public/icons/mstile-70x70.png | Bin 0 -> 1867 bytes .../public/icons/safari-pinned-tab.svg | 34 ++ src/.vuepress/public/manifest.json | 23 ++ src/.vuepress/public/site.webmanifest | 19 + src/README.md | 2 +- 21 files changed, 472 insertions(+), 78 deletions(-) delete mode 100644 src/.vuepress/public/assets/misc/tachiyomi-en.dummyrock-v1.2.1-debug.apk delete mode 100644 src/.vuepress/public/assets/search-icon.svg create mode 100644 src/.vuepress/public/browserconfig.xml create mode 100644 src/.vuepress/public/icons/android-chrome-192x192.png create mode 100644 src/.vuepress/public/icons/android-chrome-512x512.png create mode 100644 src/.vuepress/public/icons/apple-touch-icon.png rename src/.vuepress/public/{assets/media/hero.png => icons/logo.png} (100%) create mode 100644 src/.vuepress/public/icons/logo.svg create mode 100644 src/.vuepress/public/icons/mstile-144x144.png create mode 100644 src/.vuepress/public/icons/mstile-150x150.png create mode 100644 src/.vuepress/public/icons/mstile-310x150.png create mode 100644 src/.vuepress/public/icons/mstile-310x310.png create mode 100644 src/.vuepress/public/icons/mstile-70x70.png create mode 100644 src/.vuepress/public/icons/safari-pinned-tab.svg create mode 100644 src/.vuepress/public/manifest.json create mode 100644 src/.vuepress/public/site.webmanifest diff --git a/package-lock.json b/package-lock.json index b464e542..3240741f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2686,6 +2686,45 @@ "to-fast-properties": "^2.0.0" } }, + "@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==", + "dev": true + }, + "@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==", + "dev": true + }, + "@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==", + "dev": true + }, + "@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "dev": true, + "requires": { + "@hapi/address": "2.x.x", + "@hapi/bourne": "1.x.x", + "@hapi/hoek": "8.x.x", + "@hapi/topo": "3.x.x" + } + }, + "@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "dev": true, + "requires": { + "@hapi/hoek": "^8.3.0" + } + }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -3074,6 +3113,17 @@ "nprogress": "^0.2.0" } }, + "@vuepress/plugin-pwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@vuepress/plugin-pwa/-/plugin-pwa-1.4.1.tgz", + "integrity": "sha512-oWlBuC9cquuuuCUBGVbZQFJARq3mVUnuFtD4Wkwjm937kTwC+GbxfS7tSVAMgjdDM2JiyB6HSVKwqFmtwHipaA==", + "dev": true, + "requires": { + "@vuepress/shared-utils": "1.4.1", + "register-service-worker": "^1.7.0", + "workbox-build": "^4.3.1" + } + }, "@vuepress/plugin-register-components": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/@vuepress/plugin-register-components/-/plugin-register-components-1.4.1.tgz", @@ -3850,6 +3900,15 @@ "resolve": "^1.12.0" } }, + "babel-extract-comments": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz", + "integrity": "sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==", + "dev": true, + "requires": { + "babylon": "^6.18.0" + } + }, "babel-loader": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", @@ -3923,6 +3982,52 @@ "object.assign": "^4.1.0" } }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", + "dev": true, + "requires": { + "babel-plugin-syntax-object-rest-spread": "^6.8.0", + "babel-runtime": "^6.26.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "core-js": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -4946,6 +5051,12 @@ "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", "dev": true }, + "common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", + "dev": true + }, "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", @@ -7965,6 +8076,12 @@ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, "get-stdin": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", @@ -9058,6 +9175,12 @@ "has": "^1.0.3" } }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true + }, "is-resolvable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", @@ -11537,6 +11660,12 @@ "fast-diff": "^1.1.2" } }, + "pretty-bytes": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.3.0.tgz", + "integrity": "sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg==", + "dev": true + }, "pretty-error": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", @@ -11924,6 +12053,12 @@ "unicode-match-property-value-ecmascript": "^1.2.0" } }, + "register-service-worker": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/register-service-worker/-/register-service-worker-1.7.1.tgz", + "integrity": "sha512-IdTfUZ4u8iJL8o1w8es8l6UMGPmkwHolUdT+UmM1UypC80IB4KbpuIlvwWVj8UDS7eJwkEYRcKRgfRX+oTmJsw==", + "dev": true + }, "registry-auth-token": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", @@ -13141,6 +13276,25 @@ "safe-buffer": "~5.1.0" } }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "dependencies": { + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + } + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -13165,6 +13319,16 @@ "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", "dev": true }, + "strip-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz", + "integrity": "sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==", + "dev": true, + "requires": { + "babel-extract-comments": "^1.0.0", + "babel-plugin-transform-object-rest-spread": "^6.26.0" + } + }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", @@ -15013,6 +15177,173 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true }, + "workbox-background-sync": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-4.3.1.tgz", + "integrity": "sha512-1uFkvU8JXi7L7fCHVBEEnc3asPpiAL33kO495UMcD5+arew9IbKW2rV5lpzhoWcm/qhGB89YfO4PmB/0hQwPRg==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-broadcast-update": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-4.3.1.tgz", + "integrity": "sha512-MTSfgzIljpKLTBPROo4IpKjESD86pPFlZwlvVG32Kb70hW+aob4Jxpblud8EhNb1/L5m43DUM4q7C+W6eQMMbA==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-build": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-4.3.1.tgz", + "integrity": "sha512-UHdwrN3FrDvicM3AqJS/J07X0KXj67R8Cg0waq1MKEOqzo89ap6zh6LmaLnRAjpB+bDIz+7OlPye9iii9KBnxw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.4", + "@hapi/joi": "^15.0.0", + "common-tags": "^1.8.0", + "fs-extra": "^4.0.2", + "glob": "^7.1.3", + "lodash.template": "^4.4.0", + "pretty-bytes": "^5.1.0", + "stringify-object": "^3.3.0", + "strip-comments": "^1.0.2", + "workbox-background-sync": "^4.3.1", + "workbox-broadcast-update": "^4.3.1", + "workbox-cacheable-response": "^4.3.1", + "workbox-core": "^4.3.1", + "workbox-expiration": "^4.3.1", + "workbox-google-analytics": "^4.3.1", + "workbox-navigation-preload": "^4.3.1", + "workbox-precaching": "^4.3.1", + "workbox-range-requests": "^4.3.1", + "workbox-routing": "^4.3.1", + "workbox-strategies": "^4.3.1", + "workbox-streams": "^4.3.1", + "workbox-sw": "^4.3.1", + "workbox-window": "^4.3.1" + }, + "dependencies": { + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "workbox-cacheable-response": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-4.3.1.tgz", + "integrity": "sha512-Rp5qlzm6z8IOvnQNkCdO9qrDgDpoPNguovs0H8C+wswLuPgSzSp9p2afb5maUt9R1uTIwOXrVQMmPfPypv+npw==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-core": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-4.3.1.tgz", + "integrity": "sha512-I3C9jlLmMKPxAC1t0ExCq+QoAMd0vAAHULEgRZ7kieCdUd919n53WC0AfvokHNwqRhGn+tIIj7vcb5duCjs2Kg==", + "dev": true + }, + "workbox-expiration": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-4.3.1.tgz", + "integrity": "sha512-vsJLhgQsQouv9m0rpbXubT5jw0jMQdjpkum0uT+d9tTwhXcEZks7qLfQ9dGSaufTD2eimxbUOJfWLbNQpIDMPw==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-google-analytics": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-4.3.1.tgz", + "integrity": "sha512-xzCjAoKuOb55CBSwQrbyWBKqp35yg1vw9ohIlU2wTy06ZrYfJ8rKochb1MSGlnoBfXGWss3UPzxR5QL5guIFdg==", + "dev": true, + "requires": { + "workbox-background-sync": "^4.3.1", + "workbox-core": "^4.3.1", + "workbox-routing": "^4.3.1", + "workbox-strategies": "^4.3.1" + } + }, + "workbox-navigation-preload": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-4.3.1.tgz", + "integrity": "sha512-K076n3oFHYp16/C+F8CwrRqD25GitA6Rkd6+qAmLmMv1QHPI2jfDwYqrytOfKfYq42bYtW8Pr21ejZX7GvALOw==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-precaching": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-4.3.1.tgz", + "integrity": "sha512-piSg/2csPoIi/vPpp48t1q5JLYjMkmg5gsXBQkh/QYapCdVwwmKlU9mHdmy52KsDGIjVaqEUMFvEzn2LRaigqQ==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-range-requests": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-4.3.1.tgz", + "integrity": "sha512-S+HhL9+iTFypJZ/yQSl/x2Bf5pWnbXdd3j57xnb0V60FW1LVn9LRZkPtneODklzYuFZv7qK6riZ5BNyc0R0jZA==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-routing": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-4.3.1.tgz", + "integrity": "sha512-FkbtrODA4Imsi0p7TW9u9MXuQ5P4pVs1sWHK4dJMMChVROsbEltuE79fBoIk/BCztvOJ7yUpErMKa4z3uQLX+g==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-strategies": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-4.3.1.tgz", + "integrity": "sha512-F/+E57BmVG8dX6dCCopBlkDvvhg/zj6VDs0PigYwSN23L8hseSRwljrceU2WzTvk/+BSYICsWmRq5qHS2UYzhw==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-streams": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-4.3.1.tgz", + "integrity": "sha512-4Kisis1f/y0ihf4l3u/+ndMkJkIT4/6UOacU3A4BwZSAC9pQ9vSvJpIi/WFGQRH/uPXvuVjF5c2RfIPQFSS2uA==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-sw": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-4.3.1.tgz", + "integrity": "sha512-0jXdusCL2uC5gM3yYFT6QMBzKfBr2XTk0g5TPAV4y8IZDyVNDyj1a8uSXy3/XrvkVTmQvLN4O5k3JawGReXr9w==", + "dev": true + }, + "workbox-window": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-4.3.1.tgz", + "integrity": "sha512-C5gWKh6I58w3GeSc0wp2Ne+rqVw8qwcmZnQGpjiek8A2wpbxSJb1FdCoQVO+jDJs35bFgo/WETgl1fqgsxN0Hg==", + "dev": true, + "requires": { + "workbox-core": "^4.3.1" + } + }, "worker-farm": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", diff --git a/package.json b/package.json index 229fc321..006e52a9 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "devDependencies": { "@vuepress/plugin-back-to-top": "^1.4.1", "@vuepress/plugin-google-analytics": "^1.4.1", + "@vuepress/plugin-pwa": "^1.4.1", "eslint": "^6.8.0", "eslint-config-airbnb": "^18.1.0", "eslint-config-prettier": "^6.11.0", diff --git a/src/.vuepress/config.js b/src/.vuepress/config.js index 010cc214..536b74b9 100644 --- a/src/.vuepress/config.js +++ b/src/.vuepress/config.js @@ -1,16 +1,33 @@ module.exports = { - title: 'Tachiyomi', - description: 'Free and open source manga reader for Android.', dest: './public', + temp: './node_modules/.temp/theme', + + title: 'Tachiyomi', + description: 'Free and open source manga reader for Android', + + // prettier-ignore head: [ - ['link', { rel: "preconnect", href: 'https://fonts.gstatic.com', crossorigin:""} , ''], - ['link', { rel: "stylesheet", href: 'https://fonts.googleapis.com/css?family=Open+Sans'} , ''], + // PWA headers + ['link', { rel: 'icon', href: '/favicon.ico' }], + ['link', { rel: 'manifest', href: '/manifest.json' }], + ['link', { rel: 'apple-touch-icon', href: '/icons/apple-touch-icon-152x152.png' }], + ['link', { rel: 'mask-icon', href: '/icons/safari-pinned-tab.svg', color: '#2e84bf' }], + ['meta', { prefix: 'og: http://ogp.me/ns#', property: 'og:image', content: 'https://tachiyomi.org/icons/logo.png' }], + ['meta', { name: 'theme-color', content: '#2e84bf' }], + ['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }], + ['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }], + ['meta', { name: 'msapplication-TileImage', content: '/icons/msapplication-icon-144x144.png' }], + ['meta', { name: 'msapplication-TileColor', content: '#2e84bf' }], + // Custom headers + ['link', { rel: 'preconnect', href: 'https://fonts.gstatic.com', crossorigin:''}], + ['link', { rel: 'stylesheet', href: 'https://fonts.googleapis.com/css?family=Open+Sans'}], ], + themeConfig: { + logo: '/icons/logo.svg', repo: 'inorichi/tachiyomi', docsRepo: 'tachiyomiorg/website', docsDir: 'src', - logo: '/assets/media/logo.svg', algolia: { apiKey: 'fc1c45b5a3835e1882cbbf0751dfe705', indexName: 'tachiyomi' @@ -18,6 +35,7 @@ module.exports = { searchPlaceholder: 'Search...', editLinks: true, editLinkText: 'Help us improve this page', + lastUpdated: 'Last Updated', nav: require('./config/nav'), sidebar: { '/help/guides/': require('./config/sidebar/guides'), @@ -25,8 +43,7 @@ module.exports = { '/help/contribution': require('./config/sidebar/contribution'), '/extensions': require('./config/sidebar/extensions'), '/forks': require('./config/sidebar/forks') - }, - lastUpdated: 'Last Updated' + } }, plugins: require('./config/plugins'), extraWatchFiles: [ diff --git a/src/.vuepress/config/plugins.js b/src/.vuepress/config/plugins.js index ee9c5052..7dcdabe8 100644 --- a/src/.vuepress/config/plugins.js +++ b/src/.vuepress/config/plugins.js @@ -6,6 +6,13 @@ module.exports = [ normalSuffix: "/" } ], + [ + "@vuepress/pwa", + { + serviceWorker: true, + updatePopup: true + } + ], [ "@vuepress/google-analytics", { diff --git a/src/.vuepress/public/assets/misc/tachiyomi-en.dummyrock-v1.2.1-debug.apk b/src/.vuepress/public/assets/misc/tachiyomi-en.dummyrock-v1.2.1-debug.apk deleted file mode 100644 index ed13ffdcfe591055af8cfc259979cec2c893e6a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28920 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/.vuepress/public/browserconfig.xml b/src/.vuepress/public/browserconfig.xml new file mode 100644 index 00000000..dde2e0b1 --- /dev/null +++ b/src/.vuepress/public/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #2e84bf + + + diff --git a/src/.vuepress/public/icons/android-chrome-192x192.png b/src/.vuepress/public/icons/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..5264575309ddf6a91d97d99cad6f6931919a416c GIT binary patch literal 2465 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 IJvH$BA5m+Aq5uE@ literal 0 HcmV?d00001 diff --git a/src/.vuepress/public/icons/apple-touch-icon.png b/src/.vuepress/public/icons/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fed4cf4f6638a84e0d68f2b0470c6c1e0f8a8520 GIT binary patch literal 2127 zcmZ`)c{J3E7ytHpB1`eS5?Q8{yhxLMe;H$|C-D^WdL>J|6x9%u?evqitO?mNh!PV< z7zs0D9b;xJGmK?0jIl2>W*El&rayn@o!>e4-p~2mdq3y?bI-kr*RR>hNGeGJ03hRF z4|NeC>W51l6h%pSt|$UO-?wtK0)U!SsXZ?-5eIqOyEp;>Tmt}NVgZ0JO2x1MAOs8m zi+2IQGzS0_g7eYN<^b@M_4PkoZG=K$X%C~Ib2_7SGOcCeWdrR+{b*?QFsy3G{{z{t zjD#dH?K8V{Vq3$%P&^9z!jO~)6$9`ZN+NpfP1|Hq*Gwg0E~;+i>(IiBucMf;<@iQg z-}G8?^H~4PdTPr=4}G<3arUqKDB zKJ?D!VCYWSJy+gz?+Nz*eAl}x*hh5Fj4g7Q8@wjULS!v5k}&29+x z_nGTF{PbExEfq~!owKv28`p;DW?akeX`?NZXE!F6IBxlUqYG@>0%v@YQ$NIt zL5&o2OcQ3-r&qa)o7*4z=Auy}u&QDG_;$lY43EDDP45h;9&V;CTD-=26!e)SW0yHQ z&yd5urKIHM@wx%l5Oec#YKLhuwu;ESk%tei94zZ)Q06ynGCE&>8}}|Dc22CsH_?cU z^~gHv*3RCgxVD6*G0WGur&U9}Q)`XG3$+9D?Co8nM9d0j=XnjaVR)g2JfDY~deuDc zg&^K5A^Mb(HhH^GJ`YtBnH*u(ThX2!xOdeK3M7cB*o%lb%)!w{d{#_c!blggHM=3& z)DI3&E7vgE%GmCmKSNHmZ6LeC^YOnaIDRW*#k8eU5668e>-VkDe3V-O&ORIF=@DCz z9uU^$dEPI)wRCi%uU1>A?-ls{>%7VR`S(#o?8a6^6vsT%C@_L}?38f|0{*kb_3#EGAM|ilI;ZG>96FS zOy0ZsML*~P?NO7-k$ws0i55WZ;42huPwsR?zCf)0Z;m9Mr&*(tw(h`H2!#6a%5Ro* zNZ9)mEQN}?&&RawsHdP@m9A_0be|>5NhUovI^FNUw3v}+E48;{P!mjWoBcEe%Ld9uNxxLS6K&Q z`_DntVr7d~{f|M^PD9jeD@WuCdOmiW7c3_z-A*(Aq;~?!@^i^T%w*{5zZb0LaJ*WMGg(7X2g`AG2=UdUa<$pVynbo!yV>N9QS zSkenO>*i1nMahaa4UUTL#k%d_2u+YRFR@ zbHWmajw)zC;?)`k8VnI@0T&G#jlw)Jkval_9d+HmI8Pwl0xgfV zni?=ubVbj|HtG;_V)mKbE;@q~7M)l!(TQ9aFSuIeXlPlJhhHL@N}C=cw>m$_3_-Uv zwbBR2VZ5V__IZu*j~sXm^s@+3$3WGPyL|g#a1fa-EULBU9TB2#t%F7sFaGtN$OzEX z`F?-#*d^F@^aFg-^;^+m|7kDjrKiL%=2Qw%N|U#v<8*wZ1TplrBE=)|ZaZ*3RqXi? z8!3p;-(s>)I+OS1_(ea%{`l%~2u(?08JZ!4b?WHu6xJ`cdhf`u{5X2Y!}vhd4ddKc z>%rCVETLJ!?N6VMJT_KdNkV*<=585>gpFtHB@bJdMc(F>qKo)a! + + + + + + + + + diff --git a/src/.vuepress/public/icons/mstile-144x144.png b/src/.vuepress/public/icons/mstile-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..88e8e3b1a701f7df26da3e2d2c06999180bd3ed4 GIT binary patch literal 2545 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 literal 0 HcmV?d00001 diff --git a/src/.vuepress/public/icons/mstile-150x150.png b/src/.vuepress/public/icons/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..1232dab68a209e3edbb662e9203bdd789099483e GIT binary patch literal 2627 zcmb7Gc{JOJ7XEd#L#dcnRcV+QOKa59sx1|USc;-e(pXZ8)Yg=wk%(nd)hb;EErTwo zt%z8LlEjjlu~b`2EfG6KmBdz($P1&Mp7Z{Bf4pGHkas#~hX8;*pl>O&cbDmBoif-hdxLFUZ2+J;Rqk*9eY+TfJ%?}wfEXPBxRn3^ zo4eGl1ppu$0RZ0*0H99*K$(!;aM5zN@m+w6qaCo5l-kw2i=;_TuJ+QO_DRc_nHNCh zR{=m~!O6}B6*am%;qnOOq1LfB#aoHq6Ym!fe=C)th4ua65d6D?<+q%8Ev%Z8WPdNK zOb0WAa#r8Zl$CK7DgRQY66O1I=MvgHAWc8X_Itl&yW=qb>^s>K}VB}Ld|kfh#47_|U0{`45;;SY(?^A*eUtq0)KDeyjHk!zpKM0XqwP@g_AK=FPnwwC+7aTj)E! zL`|kc^d`$9(z3@Z;#{mp;9{9U3T#5I6QBE21wNSk&4o7`~l)$8(z)Ny|j*zx~4S%pLOE{Te-ulK^ z!uttPkHX0MdIiK4-U}?Y%-lrjr51I&E#A-Lmx)2yN_5?rdG2-iS6 zm>k*^^}JN(J%{iF)s*GoWPJ9c-j5Ttek@(bflLr{1(gIHq*dyQ4ahXi1Ruf7EX@up~%#xAI=klS~0nK#^<$gifjpQS>5|`&^!gs1CHWbJFape`M zZK;pQW5G+oksODLCGEv$SUP>_4_9()%2?I%*^PUWNc5WkKlTQB>yA$?uV<_<;(9dQ z=hd}!Q@^Sa_hqleI`d`==NA?jyfs79G-z-;BxN~nihqouxWVp4?z!a2eT~~jml_Lv znHJ#H0I#iN3HxXaG*1>29w+Kzb#8FLqpNkZlOYGjBJxY%i(0jbq&v`0x?Z&Ut_G_L z0XKW#e(yj&`H*ZE_3O7nzuSz?= zNOT3B0lwRcVj_IYL=&e8t)sKLk|$O} zq*oZuGVN&pVtxmEFikG0$eMS%Bp^u=Bs$C;_>%%IA)gW6V|qWBHm_*Sec;-_q#YUJ z+2Ffx&W~~LyWO59n6c&l*H;IqMMMtzL9Lz_oq0=o`G@(Uj=-|n9zhbbazj}4Tjb`Ffb&(X;grd+ zU(%)@2^0Bok8=i$<$t8E|2}^@zF$R62G%0b7$krPnqf*9%V0x;8W5F>5f)qhr*R-k zEQ^`?n5%}Xdxw0y;H*7DU^P+bSQ^8O!*N(up5N)m*pq)G3P)$Dv~AM+jM z1gbzUDIX!q(zp3T8>3FR|SQti=8cYuVQOli>X}tGc=`%Bek|&XAH4 zvyEa3<#XvvwUpW1%2-}J6r+Z#Z5Qz4iklElFz`I72YDljJM`b~#@1C6`HtbQU#h3b zL1Eh9A(6szUw94yF7gecvmH4rL$qE^v#CQ0Nyn-SH*af&dY06BG?LnUa3AkJ7yU9Z z?88fr{XhtQkd?S-pN1jYZP}(C{oI8fF~tmy)0UQf&mzUy z@%y%H7S?Pb8?6n&#wLqQQN)hk!z(1ZQiNc_K3u%;Ja@6TsZ4xKrGKXV*P8cbNSJq7 z`DDaFpKGuhy`*6WcAmd{C`waxu=I^d<*8(x?d*Hp3^(j^dy{i&hDUhXdt(AoC+L$f zjQ#Pc!8WuEr`pFV?%|(b%S5_)kxSt@{0q#OT2yE4- zuGhV3+y3FMN;AEwXz0`P)`@4dbdCD%t;~9Nardk1NE2pTb=#qX|N)cjr>rCraDa}_XNarx;ZCh6xxJ|nA*10@q1Awo5khE@V RlJV_oCwn)$N?X6%{{}eD;<*3- literal 0 HcmV?d00001 diff --git a/src/.vuepress/public/icons/mstile-310x150.png b/src/.vuepress/public/icons/mstile-310x150.png new file mode 100644 index 0000000000000000000000000000000000000000..1572e4c219c675d2d3ca03d2d01490a3cf01b10a GIT binary patch literal 2871 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 YU|m<8vF(bgl(qn{?%r-~uB5zw0|pc~pa1{> literal 0 HcmV?d00001 diff --git a/src/.vuepress/public/icons/safari-pinned-tab.svg b/src/.vuepress/public/icons/safari-pinned-tab.svg new file mode 100644 index 00000000..fe1a3b2a --- /dev/null +++ b/src/.vuepress/public/icons/safari-pinned-tab.svg @@ -0,0 +1,34 @@ + + + + +Created by potrace 1.11, written by Peter Selinger 2001-2013 + + + + + + + diff --git a/src/.vuepress/public/manifest.json b/src/.vuepress/public/manifest.json new file mode 100644 index 00000000..e051497d --- /dev/null +++ b/src/.vuepress/public/manifest.json @@ -0,0 +1,23 @@ +{ + "name": "Tachiyomi", + "short_name": "Tachiyomi", + "description": "Free and open source manga reader for Android.", + "lang": "en-US", + "theme_color": "#2e84bf", + "background_color": "#ffffff", + "start_url": "/", + "display": "standalone", + "orientation": "portrait-primary", + "icons": [ + { + "src": "/icons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/icons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ] +} \ No newline at end of file diff --git a/src/.vuepress/public/site.webmanifest b/src/.vuepress/public/site.webmanifest new file mode 100644 index 00000000..f9b5f0b1 --- /dev/null +++ b/src/.vuepress/public/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Tachiyomi", + "short_name": "Tachiyomi", + "icons": [ + { + "src": "/icons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/icons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#2e84bf", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/src/README.md b/src/README.md index c08383e9..df562af7 100644 --- a/src/README.md +++ b/src/README.md @@ -1,7 +1,7 @@ --- home: true lang: en-US -heroImage: /assets/media/logo.svg +heroImage: /icons/logo.svg actionText: Get started → actionLink: /help/guides/getting-started features: