Personal Site
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Make server use node adapter and actually a server

+153
+8
astro.config.mjs
··· 1 1 // @ts-check 2 2 import { defineConfig, envField } from "astro/config"; 3 3 4 + import node from "@astrojs/node"; 5 + 4 6 // https://astro.build/config 5 7 export default defineConfig({ 8 + output: "server", 9 + 6 10 env: { 7 11 schema: { 8 12 SPOTIFY_CLIENT_ID: envField.string({ ··· 15 19 }), 16 20 }, 17 21 }, 22 + 23 + adapter: node({ 24 + mode: "standalone", 25 + }), 18 26 });
+1
package.json
··· 9 9 "astro": "astro" 10 10 }, 11 11 "dependencies": { 12 + "@astrojs/node": "^9.3.0", 12 13 "astro": "^5.12.1" 13 14 } 14 15 }
+144
pnpm-lock.yaml
··· 8 8 9 9 .: 10 10 dependencies: 11 + '@astrojs/node': 12 + specifier: ^9.3.0 13 + version: 9.3.0(astro@5.12.1(@types/node@24.0.15)(rollup@4.45.1)(typescript@5.8.3)) 11 14 astro: 12 15 specifier: ^5.12.1 13 16 version: 5.12.1(@types/node@24.0.15)(rollup@4.45.1)(typescript@5.8.3) ··· 22 25 23 26 '@astrojs/markdown-remark@6.3.3': 24 27 resolution: {integrity: sha512-DDRtD1sPvAuA7ms2btc9A7/7DApKqgLMNrE6kh5tmkfy8utD0Z738gqd3p5aViYYdUtHIyEJ1X4mCMxfCfu15w==} 28 + 29 + '@astrojs/node@9.3.0': 30 + resolution: {integrity: sha512-IV8NzGStHAsKBz1ljxxD8PBhBfnw/BEx/PZfsncTNXg9D4kQtZbSy+Ak0LvDs+rPmK0VeXLNn0HAdWuHCVg8cw==} 31 + peerDependencies: 32 + astro: ^5.3.0 25 33 26 34 '@astrojs/prism@3.3.0': 27 35 resolution: {integrity: sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==} ··· 643 651 defu@6.1.4: 644 652 resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} 645 653 654 + depd@2.0.0: 655 + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} 656 + engines: {node: '>= 0.8'} 657 + 646 658 dequal@2.0.3: 647 659 resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 648 660 engines: {node: '>=6'} ··· 678 690 resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} 679 691 engines: {node: '>=4'} 680 692 693 + ee-first@1.1.1: 694 + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} 695 + 681 696 emoji-regex@10.4.0: 682 697 resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} 683 698 684 699 emoji-regex@8.0.0: 685 700 resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 686 701 702 + encodeurl@2.0.0: 703 + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} 704 + engines: {node: '>= 0.8'} 705 + 687 706 entities@6.0.1: 688 707 resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} 689 708 engines: {node: '>=0.12'} ··· 695 714 resolution: {integrity: sha512-vVC0USHGtMi8+R4Kz8rt6JhEWLxsv9Rnu/lGYbPR8u47B+DCBksq9JarW0zOO7bs37hyOK1l2/oqtbciutL5+Q==} 696 715 engines: {node: '>=18'} 697 716 hasBin: true 717 + 718 + escape-html@1.0.3: 719 + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} 698 720 699 721 escape-string-regexp@5.0.0: 700 722 resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} ··· 706 728 estree-walker@3.0.3: 707 729 resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 708 730 731 + etag@1.8.1: 732 + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} 733 + engines: {node: '>= 0.6'} 734 + 709 735 eventemitter3@5.0.1: 710 736 resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 711 737 ··· 732 758 733 759 fontkit@2.0.4: 734 760 resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==} 761 + 762 + fresh@2.0.0: 763 + resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==} 764 + engines: {node: '>= 0.8'} 735 765 736 766 fsevents@2.3.3: 737 767 resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} ··· 787 817 http-cache-semantics@4.2.0: 788 818 resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==} 789 819 820 + http-errors@2.0.0: 821 + resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} 822 + engines: {node: '>= 0.8'} 823 + 790 824 import-meta-resolve@4.1.0: 791 825 resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==} 792 826 827 + inherits@2.0.4: 828 + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 829 + 793 830 iron-webcrypto@1.2.1: 794 831 resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} 795 832 ··· 970 1007 971 1008 micromark@4.0.2: 972 1009 resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} 1010 + 1011 + mime-db@1.54.0: 1012 + resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} 1013 + engines: {node: '>= 0.6'} 1014 + 1015 + mime-types@3.0.1: 1016 + resolution: {integrity: sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==} 1017 + engines: {node: '>= 0.6'} 973 1018 974 1019 mrmime@2.0.1: 975 1020 resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} ··· 1015 1060 ohash@2.0.11: 1016 1061 resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} 1017 1062 1063 + on-finished@2.4.1: 1064 + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} 1065 + engines: {node: '>= 0.8'} 1066 + 1018 1067 oniguruma-parser@0.12.1: 1019 1068 resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==} 1020 1069 ··· 1077 1126 radix3@1.1.2: 1078 1127 resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} 1079 1128 1129 + range-parser@1.2.1: 1130 + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} 1131 + engines: {node: '>= 0.6'} 1132 + 1080 1133 readdirp@4.1.2: 1081 1134 resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 1082 1135 engines: {node: '>= 14.18.0'} ··· 1143 1196 engines: {node: '>=10'} 1144 1197 hasBin: true 1145 1198 1199 + send@1.2.0: 1200 + resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==} 1201 + engines: {node: '>= 18'} 1202 + 1203 + server-destroy@1.0.1: 1204 + resolution: {integrity: sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==} 1205 + 1206 + setprototypeof@1.2.0: 1207 + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} 1208 + 1146 1209 sharp@0.33.5: 1147 1210 resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} 1148 1211 engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} ··· 1167 1230 space-separated-tokens@2.0.2: 1168 1231 resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} 1169 1232 1233 + statuses@2.0.1: 1234 + resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} 1235 + engines: {node: '>= 0.8'} 1236 + 1237 + statuses@2.0.2: 1238 + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} 1239 + engines: {node: '>= 0.8'} 1240 + 1170 1241 string-width@4.2.3: 1171 1242 resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1172 1243 engines: {node: '>=8'} ··· 1196 1267 resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} 1197 1268 engines: {node: '>=12.0.0'} 1198 1269 1270 + toidentifier@1.0.1: 1271 + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} 1272 + engines: {node: '>=0.6'} 1273 + 1199 1274 tr46@0.0.3: 1200 1275 resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 1201 1276 ··· 1480 1555 unist-util-visit: 5.0.0 1481 1556 unist-util-visit-parents: 6.0.1 1482 1557 vfile: 6.0.3 1558 + transitivePeerDependencies: 1559 + - supports-color 1560 + 1561 + '@astrojs/node@9.3.0(astro@5.12.1(@types/node@24.0.15)(rollup@4.45.1)(typescript@5.8.3))': 1562 + dependencies: 1563 + '@astrojs/internal-helpers': 0.6.1 1564 + astro: 5.12.1(@types/node@24.0.15)(rollup@4.45.1)(typescript@5.8.3) 1565 + send: 1.2.0 1566 + server-destroy: 1.0.1 1483 1567 transitivePeerDependencies: 1484 1568 - supports-color 1485 1569 ··· 2047 2131 2048 2132 defu@6.1.4: {} 2049 2133 2134 + depd@2.0.0: {} 2135 + 2050 2136 dequal@2.0.3: {} 2051 2137 2052 2138 destr@2.0.5: {} ··· 2072 2158 2073 2159 dset@3.1.4: {} 2074 2160 2161 + ee-first@1.1.1: {} 2162 + 2075 2163 emoji-regex@10.4.0: {} 2076 2164 2077 2165 emoji-regex@8.0.0: {} 2166 + 2167 + encodeurl@2.0.0: {} 2078 2168 2079 2169 entities@6.0.1: {} 2080 2170 ··· 2109 2199 '@esbuild/win32-ia32': 0.25.8 2110 2200 '@esbuild/win32-x64': 0.25.8 2111 2201 2202 + escape-html@1.0.3: {} 2203 + 2112 2204 escape-string-regexp@5.0.0: {} 2113 2205 2114 2206 estree-walker@2.0.2: {} ··· 2116 2208 estree-walker@3.0.3: 2117 2209 dependencies: 2118 2210 '@types/estree': 1.0.8 2211 + 2212 + etag@1.8.1: {} 2119 2213 2120 2214 eventemitter3@5.0.1: {} 2121 2215 ··· 2145 2239 tiny-inflate: 1.0.3 2146 2240 unicode-properties: 1.4.1 2147 2241 unicode-trie: 2.0.0 2242 + 2243 + fresh@2.0.0: {} 2148 2244 2149 2245 fsevents@2.3.3: 2150 2246 optional: true ··· 2258 2354 2259 2355 http-cache-semantics@4.2.0: {} 2260 2356 2357 + http-errors@2.0.0: 2358 + dependencies: 2359 + depd: 2.0.0 2360 + inherits: 2.0.4 2361 + setprototypeof: 1.2.0 2362 + statuses: 2.0.1 2363 + toidentifier: 1.0.1 2364 + 2261 2365 import-meta-resolve@4.1.0: {} 2366 + 2367 + inherits@2.0.4: {} 2262 2368 2263 2369 iron-webcrypto@1.2.1: {} 2264 2370 ··· 2616 2722 transitivePeerDependencies: 2617 2723 - supports-color 2618 2724 2725 + mime-db@1.54.0: {} 2726 + 2727 + mime-types@3.0.1: 2728 + dependencies: 2729 + mime-db: 1.54.0 2730 + 2619 2731 mrmime@2.0.1: {} 2620 2732 2621 2733 ms@2.1.3: {} ··· 2645 2757 ufo: 1.6.1 2646 2758 2647 2759 ohash@2.0.11: {} 2760 + 2761 + on-finished@2.4.1: 2762 + dependencies: 2763 + ee-first: 1.1.1 2648 2764 2649 2765 oniguruma-parser@0.12.1: {} 2650 2766 ··· 2706 2822 property-information@7.1.0: {} 2707 2823 2708 2824 radix3@1.1.2: {} 2825 + 2826 + range-parser@1.2.1: {} 2709 2827 2710 2828 readdirp@4.1.2: {} 2711 2829 ··· 2840 2958 2841 2959 semver@7.7.2: {} 2842 2960 2961 + send@1.2.0: 2962 + dependencies: 2963 + debug: 4.4.1 2964 + encodeurl: 2.0.0 2965 + escape-html: 1.0.3 2966 + etag: 1.8.1 2967 + fresh: 2.0.0 2968 + http-errors: 2.0.0 2969 + mime-types: 3.0.1 2970 + ms: 2.1.3 2971 + on-finished: 2.4.1 2972 + range-parser: 1.2.1 2973 + statuses: 2.0.2 2974 + transitivePeerDependencies: 2975 + - supports-color 2976 + 2977 + server-destroy@1.0.1: {} 2978 + 2979 + setprototypeof@1.2.0: {} 2980 + 2843 2981 sharp@0.33.5: 2844 2982 dependencies: 2845 2983 color: 4.2.3 ··· 2891 3029 2892 3030 space-separated-tokens@2.0.2: {} 2893 3031 3032 + statuses@2.0.1: {} 3033 + 3034 + statuses@2.0.2: {} 3035 + 2894 3036 string-width@4.2.3: 2895 3037 dependencies: 2896 3038 emoji-regex: 8.0.0 ··· 2924 3066 dependencies: 2925 3067 fdir: 6.4.6(picomatch@4.0.3) 2926 3068 picomatch: 4.0.3 3069 + 3070 + toidentifier@1.0.1: {} 2927 3071 2928 3072 tr46@0.0.3: {} 2929 3073