diff --git a/website/.node-version b/website/.node-version new file mode 100644 index 00000000..18c28417 --- /dev/null +++ b/website/.node-version @@ -0,0 +1 @@ +20.11.0 \ No newline at end of file diff --git a/website/netlify.toml b/website/netlify.toml deleted file mode 100644 index 9cb4a9bf..00000000 --- a/website/netlify.toml +++ /dev/null @@ -1,3 +0,0 @@ -[build] - command = "npm run build" - publish = "build" \ No newline at end of file diff --git a/website/package-lock.json b/website/package-lock.json index d42ad7d1..f10aecf6 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -30,7 +30,7 @@ "@playwright/test": "^1.28.1", "@skeletonlabs/skeleton": "2.8.0", "@skeletonlabs/tw-plugin": "0.3.1", - "@sveltejs/adapter-netlify": "^4.1.0", + "@sveltejs/adapter-cloudflare": "^4.1.0", "@sveltejs/kit": "^2.0.0", "@sveltejs/vite-plugin-svelte": "^3.0.0", "@tailwindcss/typography": "0.5.10", @@ -88,6 +88,12 @@ "node": ">=6.0.0" } }, + "node_modules/@cloudflare/workers-types": { + "version": "4.20240208.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20240208.0.tgz", + "integrity": "sha512-MVGTTjZpJu4kJONvai5SdJzWIhOJbuweVZ3goI7FNyG+JdoQH41OoB+nMhLsX626vPLZVWGPIWsiSo/WZHzgQw==", + "dev": true + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.19.12", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", @@ -632,12 +638,6 @@ "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, - "node_modules/@iarna/toml": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", - "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==", - "dev": true - }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -1124,18 +1124,18 @@ "tailwindcss": ">=3.0.0" } }, - "node_modules/@sveltejs/adapter-netlify": { + "node_modules/@sveltejs/adapter-cloudflare": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@sveltejs/adapter-netlify/-/adapter-netlify-4.1.0.tgz", - "integrity": "sha512-TGv14O/9xumJv/q9G57ZCzl+LUWHZ9dDleugT5QQD87zJE3Y98AKyU5Z7c7WlBTjKYKEQEeOxjnSdOpMRuhd6g==", + "resolved": "https://registry.npmjs.org/@sveltejs/adapter-cloudflare/-/adapter-cloudflare-4.1.0.tgz", + "integrity": "sha512-AQQdZAZpcFDcBiMEmxbMYhn4yKZYoPZrKUrYpVejjbO+9obIGIuj/jWjVzAEkHqZMZuoRRqPbq+Zq+AWRm4x1Q==", "dev": true, "dependencies": { - "@iarna/toml": "^2.2.5", + "@cloudflare/workers-types": "^4.20231121.0", "esbuild": "^0.19.11", - "set-cookie-parser": "^2.6.0" + "worktop": "0.8.0-next.18" }, "peerDependencies": { - "@sveltejs/kit": "^2.4.0" + "@sveltejs/kit": "^2.0.0" } }, "node_modules/@sveltejs/kit": { @@ -4799,6 +4799,15 @@ "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" }, + "node_modules/regexparam": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/regexparam/-/regexparam-3.0.0.tgz", + "integrity": "sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/rehype-autolink-headings": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/rehype-autolink-headings/-/rehype-autolink-headings-7.1.0.tgz", @@ -6263,6 +6272,19 @@ "node": ">= 8" } }, + "node_modules/worktop": { + "version": "0.8.0-next.18", + "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.18.tgz", + "integrity": "sha512-+TvsA6VAVoMC3XDKR5MoC/qlLqDixEfOBysDEKnPIPou/NvoPWCAuXHXMsswwlvmEuvX56lQjvELLyLuzTKvRw==", + "dev": true, + "dependencies": { + "mrmime": "^2.0.0", + "regexparam": "^3.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", diff --git a/website/package.json b/website/package.json index 6d6bb9af..8dcd9b93 100644 --- a/website/package.json +++ b/website/package.json @@ -17,7 +17,7 @@ "@playwright/test": "^1.28.1", "@skeletonlabs/skeleton": "2.8.0", "@skeletonlabs/tw-plugin": "0.3.1", - "@sveltejs/adapter-netlify": "^4.1.0", + "@sveltejs/adapter-cloudflare": "^4.1.0", "@sveltejs/kit": "^2.0.0", "@sveltejs/vite-plugin-svelte": "^3.0.0", "@tailwindcss/typography": "0.5.10", diff --git a/website/src/app.d.ts b/website/src/app.d.ts index 2a517df6..c627dc68 100644 --- a/website/src/app.d.ts +++ b/website/src/app.d.ts @@ -6,6 +6,15 @@ declare namespace App { // interface PageData {} // interface Error {} // interface Platform {} + interface Platform { + env: { + COUNTER: DurableObjectNamespace; + }; + context: { + waitUntil(promise: Promise): void; + }; + caches: CacheStorage & { default: Cache }; + } } declare module '@fortawesome/pro-solid-svg-icons/index.es' { diff --git a/website/src/app.html b/website/src/app.html index 772aa3ca..088ddd5d 100644 --- a/website/src/app.html +++ b/website/src/app.html @@ -3,8 +3,16 @@ - + + + + + + + + + %sveltekit.head% diff --git a/website/src/routes/+page.svelte b/website/src/routes/+page.svelte index 057f94c1..8b78dbc5 100644 --- a/website/src/routes/+page.svelte +++ b/website/src/routes/+page.svelte @@ -83,7 +83,11 @@
- + Open Collective
diff --git a/website/static/android-chrome-192x192.png b/website/static/android-chrome-192x192.png new file mode 100644 index 00000000..2ef2f3e7 Binary files /dev/null and b/website/static/android-chrome-192x192.png differ diff --git a/website/static/android-chrome-512x512.png b/website/static/android-chrome-512x512.png new file mode 100644 index 00000000..41bda9c4 Binary files /dev/null and b/website/static/android-chrome-512x512.png differ diff --git a/website/static/apple-touch-icon.png b/website/static/apple-touch-icon.png new file mode 100644 index 00000000..c171ce48 Binary files /dev/null and b/website/static/apple-touch-icon.png differ diff --git a/website/static/favicon-16x16.png b/website/static/favicon-16x16.png new file mode 100644 index 00000000..6c14fa32 Binary files /dev/null and b/website/static/favicon-16x16.png differ diff --git a/website/static/favicon-32x32.png b/website/static/favicon-32x32.png new file mode 100644 index 00000000..8106368f Binary files /dev/null and b/website/static/favicon-32x32.png differ diff --git a/website/static/favicon.ico b/website/static/favicon.ico new file mode 100644 index 00000000..e8e1c26b Binary files /dev/null and b/website/static/favicon.ico differ diff --git a/website/static/favicon.png b/website/static/favicon.png deleted file mode 100644 index c4e3735c..00000000 Binary files a/website/static/favicon.png and /dev/null differ diff --git a/website/static/manifest.json b/website/static/manifest.json new file mode 100644 index 00000000..a6f8ee29 --- /dev/null +++ b/website/static/manifest.json @@ -0,0 +1,19 @@ +{ + "name": "Spotube", + "short_name": "spotube", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} \ No newline at end of file diff --git a/website/svelte.config.js b/website/svelte.config.js index dd6a5b33..b5717e39 100644 --- a/website/svelte.config.js +++ b/website/svelte.config.js @@ -1,4 +1,4 @@ -import adapter from '@sveltejs/adapter-netlify'; +import adapter from '@sveltejs/adapter-cloudflare'; import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'; import { mdsvex } from 'mdsvex'; import readingTime from 'remark-reading-time'; @@ -49,10 +49,7 @@ const config = { // adapter-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. // If your environment is not supported or you settled on a specific environment, switch out the adapter. // See https://kit.svelte.dev/docs/adapters for more information about adapters. - adapter: adapter({ - edge: false, - split: false - }) + adapter: adapter() } }; export default config;