eny.space Landingpage
1
fork

Configure Feed

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

feat(app): integrate Tailwind CSS and update styles with new global CSS file

Sam Sauer ce1ac314 6c7e27e5

+670 -10
+1 -1
app/layout.tsx
··· 3 3 import { Analytics } from "@vercel/analytics/next"; 4 4 import { Space_Grotesk } from "next/font/google"; 5 5 6 - import "../styles.css"; 6 + import "./globals.css"; 7 7 8 8 const fontSans = Space_Grotesk({ 9 9 subsets: ["latin"],
+656 -8
package-lock.json
··· 7 7 "dependencies": { 8 8 "@stripe/react-stripe-js": "2.4.0", 9 9 "@stripe/stripe-js": "2.2.2", 10 + "@tailwindcss/postcss": "^4.1.18", 10 11 "@vercel/analytics": "^1.6.1", 11 12 "@vercel/speed-insights": "^1.3.1", 12 13 "next": "latest", 14 + "postcss": "^8.5.6", 13 15 "react": "18.2.0", 14 16 "react-dom": "18.2.0", 15 17 "server-only": "0.0.1", 16 - "stripe": "14.8.0" 18 + "stripe": "14.8.0", 19 + "tailwindcss": "^4.1.18" 17 20 }, 18 21 "devDependencies": { 19 22 "@types/node": "20.4.6", 20 23 "@types/react": "18.2.8", 21 24 "typescript": "5.1.6" 25 + } 26 + }, 27 + "node_modules/@alloc/quick-lru": { 28 + "version": "5.2.0", 29 + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", 30 + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", 31 + "license": "MIT", 32 + "engines": { 33 + "node": ">=10" 34 + }, 35 + "funding": { 36 + "url": "https://github.com/sponsors/sindresorhus" 22 37 } 23 38 }, 24 39 "node_modules/@emnapi/runtime": { ··· 497 512 "url": "https://opencollective.com/libvips" 498 513 } 499 514 }, 515 + "node_modules/@jridgewell/gen-mapping": { 516 + "version": "0.3.13", 517 + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", 518 + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", 519 + "license": "MIT", 520 + "dependencies": { 521 + "@jridgewell/sourcemap-codec": "^1.5.0", 522 + "@jridgewell/trace-mapping": "^0.3.24" 523 + } 524 + }, 525 + "node_modules/@jridgewell/remapping": { 526 + "version": "2.3.5", 527 + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", 528 + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", 529 + "license": "MIT", 530 + "dependencies": { 531 + "@jridgewell/gen-mapping": "^0.3.5", 532 + "@jridgewell/trace-mapping": "^0.3.24" 533 + } 534 + }, 535 + "node_modules/@jridgewell/resolve-uri": { 536 + "version": "3.1.2", 537 + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", 538 + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", 539 + "license": "MIT", 540 + "engines": { 541 + "node": ">=6.0.0" 542 + } 543 + }, 544 + "node_modules/@jridgewell/sourcemap-codec": { 545 + "version": "1.5.5", 546 + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", 547 + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", 548 + "license": "MIT" 549 + }, 550 + "node_modules/@jridgewell/trace-mapping": { 551 + "version": "0.3.31", 552 + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", 553 + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", 554 + "license": "MIT", 555 + "dependencies": { 556 + "@jridgewell/resolve-uri": "^3.1.0", 557 + "@jridgewell/sourcemap-codec": "^1.4.14" 558 + } 559 + }, 500 560 "node_modules/@next/env": { 501 561 "version": "16.0.10", 502 562 "resolved": "https://registry.npmjs.org/@next/env/-/env-16.0.10.tgz", ··· 660 720 "tslib": "^2.8.0" 661 721 } 662 722 }, 723 + "node_modules/@tailwindcss/node": { 724 + "version": "4.1.18", 725 + "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.1.18.tgz", 726 + "integrity": "sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==", 727 + "license": "MIT", 728 + "dependencies": { 729 + "@jridgewell/remapping": "^2.3.4", 730 + "enhanced-resolve": "^5.18.3", 731 + "jiti": "^2.6.1", 732 + "lightningcss": "1.30.2", 733 + "magic-string": "^0.30.21", 734 + "source-map-js": "^1.2.1", 735 + "tailwindcss": "4.1.18" 736 + } 737 + }, 738 + "node_modules/@tailwindcss/oxide": { 739 + "version": "4.1.18", 740 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.18.tgz", 741 + "integrity": "sha512-EgCR5tTS5bUSKQgzeMClT6iCY3ToqE1y+ZB0AKldj809QXk1Y+3jB0upOYZrn9aGIzPtUsP7sX4QQ4XtjBB95A==", 742 + "license": "MIT", 743 + "engines": { 744 + "node": ">= 10" 745 + }, 746 + "optionalDependencies": { 747 + "@tailwindcss/oxide-android-arm64": "4.1.18", 748 + "@tailwindcss/oxide-darwin-arm64": "4.1.18", 749 + "@tailwindcss/oxide-darwin-x64": "4.1.18", 750 + "@tailwindcss/oxide-freebsd-x64": "4.1.18", 751 + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.18", 752 + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.18", 753 + "@tailwindcss/oxide-linux-arm64-musl": "4.1.18", 754 + "@tailwindcss/oxide-linux-x64-gnu": "4.1.18", 755 + "@tailwindcss/oxide-linux-x64-musl": "4.1.18", 756 + "@tailwindcss/oxide-wasm32-wasi": "4.1.18", 757 + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.18", 758 + "@tailwindcss/oxide-win32-x64-msvc": "4.1.18" 759 + } 760 + }, 761 + "node_modules/@tailwindcss/oxide-android-arm64": { 762 + "version": "4.1.18", 763 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.18.tgz", 764 + "integrity": "sha512-dJHz7+Ugr9U/diKJA0W6N/6/cjI+ZTAoxPf9Iz9BFRF2GzEX8IvXxFIi/dZBloVJX/MZGvRuFA9rqwdiIEZQ0Q==", 765 + "cpu": [ 766 + "arm64" 767 + ], 768 + "license": "MIT", 769 + "optional": true, 770 + "os": [ 771 + "android" 772 + ], 773 + "engines": { 774 + "node": ">= 10" 775 + } 776 + }, 777 + "node_modules/@tailwindcss/oxide-darwin-arm64": { 778 + "version": "4.1.18", 779 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.18.tgz", 780 + "integrity": "sha512-Gc2q4Qhs660bhjyBSKgq6BYvwDz4G+BuyJ5H1xfhmDR3D8HnHCmT/BSkvSL0vQLy/nkMLY20PQ2OoYMO15Jd0A==", 781 + "cpu": [ 782 + "arm64" 783 + ], 784 + "license": "MIT", 785 + "optional": true, 786 + "os": [ 787 + "darwin" 788 + ], 789 + "engines": { 790 + "node": ">= 10" 791 + } 792 + }, 793 + "node_modules/@tailwindcss/oxide-darwin-x64": { 794 + "version": "4.1.18", 795 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.18.tgz", 796 + "integrity": "sha512-FL5oxr2xQsFrc3X9o1fjHKBYBMD1QZNyc1Xzw/h5Qu4XnEBi3dZn96HcHm41c/euGV+GRiXFfh2hUCyKi/e+yw==", 797 + "cpu": [ 798 + "x64" 799 + ], 800 + "license": "MIT", 801 + "optional": true, 802 + "os": [ 803 + "darwin" 804 + ], 805 + "engines": { 806 + "node": ">= 10" 807 + } 808 + }, 809 + "node_modules/@tailwindcss/oxide-freebsd-x64": { 810 + "version": "4.1.18", 811 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.18.tgz", 812 + "integrity": "sha512-Fj+RHgu5bDodmV1dM9yAxlfJwkkWvLiRjbhuO2LEtwtlYlBgiAT4x/j5wQr1tC3SANAgD+0YcmWVrj8R9trVMA==", 813 + "cpu": [ 814 + "x64" 815 + ], 816 + "license": "MIT", 817 + "optional": true, 818 + "os": [ 819 + "freebsd" 820 + ], 821 + "engines": { 822 + "node": ">= 10" 823 + } 824 + }, 825 + "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { 826 + "version": "4.1.18", 827 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.18.tgz", 828 + "integrity": "sha512-Fp+Wzk/Ws4dZn+LV2Nqx3IilnhH51YZoRaYHQsVq3RQvEl+71VGKFpkfHrLM/Li+kt5c0DJe/bHXK1eHgDmdiA==", 829 + "cpu": [ 830 + "arm" 831 + ], 832 + "license": "MIT", 833 + "optional": true, 834 + "os": [ 835 + "linux" 836 + ], 837 + "engines": { 838 + "node": ">= 10" 839 + } 840 + }, 841 + "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { 842 + "version": "4.1.18", 843 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.18.tgz", 844 + "integrity": "sha512-S0n3jboLysNbh55Vrt7pk9wgpyTTPD0fdQeh7wQfMqLPM/Hrxi+dVsLsPrycQjGKEQk85Kgbx+6+QnYNiHalnw==", 845 + "cpu": [ 846 + "arm64" 847 + ], 848 + "license": "MIT", 849 + "optional": true, 850 + "os": [ 851 + "linux" 852 + ], 853 + "engines": { 854 + "node": ">= 10" 855 + } 856 + }, 857 + "node_modules/@tailwindcss/oxide-linux-arm64-musl": { 858 + "version": "4.1.18", 859 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.18.tgz", 860 + "integrity": "sha512-1px92582HkPQlaaCkdRcio71p8bc8i/ap5807tPRDK/uw953cauQBT8c5tVGkOwrHMfc2Yh6UuxaH4vtTjGvHg==", 861 + "cpu": [ 862 + "arm64" 863 + ], 864 + "license": "MIT", 865 + "optional": true, 866 + "os": [ 867 + "linux" 868 + ], 869 + "engines": { 870 + "node": ">= 10" 871 + } 872 + }, 873 + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { 874 + "version": "4.1.18", 875 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.18.tgz", 876 + "integrity": "sha512-v3gyT0ivkfBLoZGF9LyHmts0Isc8jHZyVcbzio6Wpzifg/+5ZJpDiRiUhDLkcr7f/r38SWNe7ucxmGW3j3Kb/g==", 877 + "cpu": [ 878 + "x64" 879 + ], 880 + "license": "MIT", 881 + "optional": true, 882 + "os": [ 883 + "linux" 884 + ], 885 + "engines": { 886 + "node": ">= 10" 887 + } 888 + }, 889 + "node_modules/@tailwindcss/oxide-linux-x64-musl": { 890 + "version": "4.1.18", 891 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.18.tgz", 892 + "integrity": "sha512-bhJ2y2OQNlcRwwgOAGMY0xTFStt4/wyU6pvI6LSuZpRgKQwxTec0/3Scu91O8ir7qCR3AuepQKLU/kX99FouqQ==", 893 + "cpu": [ 894 + "x64" 895 + ], 896 + "license": "MIT", 897 + "optional": true, 898 + "os": [ 899 + "linux" 900 + ], 901 + "engines": { 902 + "node": ">= 10" 903 + } 904 + }, 905 + "node_modules/@tailwindcss/oxide-wasm32-wasi": { 906 + "version": "4.1.18", 907 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.18.tgz", 908 + "integrity": "sha512-LffYTvPjODiP6PT16oNeUQJzNVyJl1cjIebq/rWWBF+3eDst5JGEFSc5cWxyRCJ0Mxl+KyIkqRxk1XPEs9x8TA==", 909 + "bundleDependencies": [ 910 + "@napi-rs/wasm-runtime", 911 + "@emnapi/core", 912 + "@emnapi/runtime", 913 + "@tybys/wasm-util", 914 + "@emnapi/wasi-threads", 915 + "tslib" 916 + ], 917 + "cpu": [ 918 + "wasm32" 919 + ], 920 + "license": "MIT", 921 + "optional": true, 922 + "dependencies": { 923 + "@emnapi/core": "^1.7.1", 924 + "@emnapi/runtime": "^1.7.1", 925 + "@emnapi/wasi-threads": "^1.1.0", 926 + "@napi-rs/wasm-runtime": "^1.1.0", 927 + "@tybys/wasm-util": "^0.10.1", 928 + "tslib": "^2.4.0" 929 + }, 930 + "engines": { 931 + "node": ">=14.0.0" 932 + } 933 + }, 934 + "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { 935 + "version": "4.1.18", 936 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.18.tgz", 937 + "integrity": "sha512-HjSA7mr9HmC8fu6bdsZvZ+dhjyGCLdotjVOgLA2vEqxEBZaQo9YTX4kwgEvPCpRh8o4uWc4J/wEoFzhEmjvPbA==", 938 + "cpu": [ 939 + "arm64" 940 + ], 941 + "license": "MIT", 942 + "optional": true, 943 + "os": [ 944 + "win32" 945 + ], 946 + "engines": { 947 + "node": ">= 10" 948 + } 949 + }, 950 + "node_modules/@tailwindcss/oxide-win32-x64-msvc": { 951 + "version": "4.1.18", 952 + "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.18.tgz", 953 + "integrity": "sha512-bJWbyYpUlqamC8dpR7pfjA0I7vdF6t5VpUGMWRkXVE3AXgIZjYUYAK7II1GNaxR8J1SSrSrppRar8G++JekE3Q==", 954 + "cpu": [ 955 + "x64" 956 + ], 957 + "license": "MIT", 958 + "optional": true, 959 + "os": [ 960 + "win32" 961 + ], 962 + "engines": { 963 + "node": ">= 10" 964 + } 965 + }, 966 + "node_modules/@tailwindcss/postcss": { 967 + "version": "4.1.18", 968 + "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.1.18.tgz", 969 + "integrity": "sha512-Ce0GFnzAOuPyfV5SxjXGn0CubwGcuDB0zcdaPuCSzAa/2vII24JTkH+I6jcbXLb1ctjZMZZI6OjDaLPJQL1S0g==", 970 + "license": "MIT", 971 + "dependencies": { 972 + "@alloc/quick-lru": "^5.2.0", 973 + "@tailwindcss/node": "4.1.18", 974 + "@tailwindcss/oxide": "4.1.18", 975 + "postcss": "^8.4.41", 976 + "tailwindcss": "4.1.18" 977 + } 978 + }, 663 979 "node_modules/@types/node": { 664 980 "version": "20.4.6", 665 981 "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.6.tgz", ··· 831 1147 "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", 832 1148 "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", 833 1149 "license": "Apache-2.0", 834 - "optional": true, 835 1150 "engines": { 836 1151 "node": ">=8" 837 1152 } ··· 848 1163 }, 849 1164 "engines": { 850 1165 "node": ">= 0.4" 1166 + } 1167 + }, 1168 + "node_modules/enhanced-resolve": { 1169 + "version": "5.18.4", 1170 + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", 1171 + "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", 1172 + "license": "MIT", 1173 + "dependencies": { 1174 + "graceful-fs": "^4.2.4", 1175 + "tapable": "^2.2.0" 1176 + }, 1177 + "engines": { 1178 + "node": ">=10.13.0" 851 1179 } 852 1180 }, 853 1181 "node_modules/es-define-property": { ··· 938 1266 "url": "https://github.com/sponsors/ljharb" 939 1267 } 940 1268 }, 1269 + "node_modules/graceful-fs": { 1270 + "version": "4.2.11", 1271 + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 1272 + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", 1273 + "license": "ISC" 1274 + }, 941 1275 "node_modules/has-symbols": { 942 1276 "version": "1.1.0", 943 1277 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", ··· 962 1296 "node": ">= 0.4" 963 1297 } 964 1298 }, 1299 + "node_modules/jiti": { 1300 + "version": "2.6.1", 1301 + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", 1302 + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", 1303 + "license": "MIT", 1304 + "bin": { 1305 + "jiti": "lib/jiti-cli.mjs" 1306 + } 1307 + }, 965 1308 "node_modules/js-tokens": { 966 1309 "version": "4.0.0", 967 1310 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 968 1311 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 969 1312 "license": "MIT" 970 1313 }, 1314 + "node_modules/lightningcss": { 1315 + "version": "1.30.2", 1316 + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz", 1317 + "integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==", 1318 + "license": "MPL-2.0", 1319 + "dependencies": { 1320 + "detect-libc": "^2.0.3" 1321 + }, 1322 + "engines": { 1323 + "node": ">= 12.0.0" 1324 + }, 1325 + "funding": { 1326 + "type": "opencollective", 1327 + "url": "https://opencollective.com/parcel" 1328 + }, 1329 + "optionalDependencies": { 1330 + "lightningcss-android-arm64": "1.30.2", 1331 + "lightningcss-darwin-arm64": "1.30.2", 1332 + "lightningcss-darwin-x64": "1.30.2", 1333 + "lightningcss-freebsd-x64": "1.30.2", 1334 + "lightningcss-linux-arm-gnueabihf": "1.30.2", 1335 + "lightningcss-linux-arm64-gnu": "1.30.2", 1336 + "lightningcss-linux-arm64-musl": "1.30.2", 1337 + "lightningcss-linux-x64-gnu": "1.30.2", 1338 + "lightningcss-linux-x64-musl": "1.30.2", 1339 + "lightningcss-win32-arm64-msvc": "1.30.2", 1340 + "lightningcss-win32-x64-msvc": "1.30.2" 1341 + } 1342 + }, 1343 + "node_modules/lightningcss-android-arm64": { 1344 + "version": "1.30.2", 1345 + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz", 1346 + "integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==", 1347 + "cpu": [ 1348 + "arm64" 1349 + ], 1350 + "license": "MPL-2.0", 1351 + "optional": true, 1352 + "os": [ 1353 + "android" 1354 + ], 1355 + "engines": { 1356 + "node": ">= 12.0.0" 1357 + }, 1358 + "funding": { 1359 + "type": "opencollective", 1360 + "url": "https://opencollective.com/parcel" 1361 + } 1362 + }, 1363 + "node_modules/lightningcss-darwin-arm64": { 1364 + "version": "1.30.2", 1365 + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz", 1366 + "integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==", 1367 + "cpu": [ 1368 + "arm64" 1369 + ], 1370 + "license": "MPL-2.0", 1371 + "optional": true, 1372 + "os": [ 1373 + "darwin" 1374 + ], 1375 + "engines": { 1376 + "node": ">= 12.0.0" 1377 + }, 1378 + "funding": { 1379 + "type": "opencollective", 1380 + "url": "https://opencollective.com/parcel" 1381 + } 1382 + }, 1383 + "node_modules/lightningcss-darwin-x64": { 1384 + "version": "1.30.2", 1385 + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz", 1386 + "integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==", 1387 + "cpu": [ 1388 + "x64" 1389 + ], 1390 + "license": "MPL-2.0", 1391 + "optional": true, 1392 + "os": [ 1393 + "darwin" 1394 + ], 1395 + "engines": { 1396 + "node": ">= 12.0.0" 1397 + }, 1398 + "funding": { 1399 + "type": "opencollective", 1400 + "url": "https://opencollective.com/parcel" 1401 + } 1402 + }, 1403 + "node_modules/lightningcss-freebsd-x64": { 1404 + "version": "1.30.2", 1405 + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz", 1406 + "integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==", 1407 + "cpu": [ 1408 + "x64" 1409 + ], 1410 + "license": "MPL-2.0", 1411 + "optional": true, 1412 + "os": [ 1413 + "freebsd" 1414 + ], 1415 + "engines": { 1416 + "node": ">= 12.0.0" 1417 + }, 1418 + "funding": { 1419 + "type": "opencollective", 1420 + "url": "https://opencollective.com/parcel" 1421 + } 1422 + }, 1423 + "node_modules/lightningcss-linux-arm-gnueabihf": { 1424 + "version": "1.30.2", 1425 + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz", 1426 + "integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==", 1427 + "cpu": [ 1428 + "arm" 1429 + ], 1430 + "license": "MPL-2.0", 1431 + "optional": true, 1432 + "os": [ 1433 + "linux" 1434 + ], 1435 + "engines": { 1436 + "node": ">= 12.0.0" 1437 + }, 1438 + "funding": { 1439 + "type": "opencollective", 1440 + "url": "https://opencollective.com/parcel" 1441 + } 1442 + }, 1443 + "node_modules/lightningcss-linux-arm64-gnu": { 1444 + "version": "1.30.2", 1445 + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz", 1446 + "integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==", 1447 + "cpu": [ 1448 + "arm64" 1449 + ], 1450 + "license": "MPL-2.0", 1451 + "optional": true, 1452 + "os": [ 1453 + "linux" 1454 + ], 1455 + "engines": { 1456 + "node": ">= 12.0.0" 1457 + }, 1458 + "funding": { 1459 + "type": "opencollective", 1460 + "url": "https://opencollective.com/parcel" 1461 + } 1462 + }, 1463 + "node_modules/lightningcss-linux-arm64-musl": { 1464 + "version": "1.30.2", 1465 + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz", 1466 + "integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==", 1467 + "cpu": [ 1468 + "arm64" 1469 + ], 1470 + "license": "MPL-2.0", 1471 + "optional": true, 1472 + "os": [ 1473 + "linux" 1474 + ], 1475 + "engines": { 1476 + "node": ">= 12.0.0" 1477 + }, 1478 + "funding": { 1479 + "type": "opencollective", 1480 + "url": "https://opencollective.com/parcel" 1481 + } 1482 + }, 1483 + "node_modules/lightningcss-linux-x64-gnu": { 1484 + "version": "1.30.2", 1485 + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz", 1486 + "integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==", 1487 + "cpu": [ 1488 + "x64" 1489 + ], 1490 + "license": "MPL-2.0", 1491 + "optional": true, 1492 + "os": [ 1493 + "linux" 1494 + ], 1495 + "engines": { 1496 + "node": ">= 12.0.0" 1497 + }, 1498 + "funding": { 1499 + "type": "opencollective", 1500 + "url": "https://opencollective.com/parcel" 1501 + } 1502 + }, 1503 + "node_modules/lightningcss-linux-x64-musl": { 1504 + "version": "1.30.2", 1505 + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz", 1506 + "integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==", 1507 + "cpu": [ 1508 + "x64" 1509 + ], 1510 + "license": "MPL-2.0", 1511 + "optional": true, 1512 + "os": [ 1513 + "linux" 1514 + ], 1515 + "engines": { 1516 + "node": ">= 12.0.0" 1517 + }, 1518 + "funding": { 1519 + "type": "opencollective", 1520 + "url": "https://opencollective.com/parcel" 1521 + } 1522 + }, 1523 + "node_modules/lightningcss-win32-arm64-msvc": { 1524 + "version": "1.30.2", 1525 + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz", 1526 + "integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==", 1527 + "cpu": [ 1528 + "arm64" 1529 + ], 1530 + "license": "MPL-2.0", 1531 + "optional": true, 1532 + "os": [ 1533 + "win32" 1534 + ], 1535 + "engines": { 1536 + "node": ">= 12.0.0" 1537 + }, 1538 + "funding": { 1539 + "type": "opencollective", 1540 + "url": "https://opencollective.com/parcel" 1541 + } 1542 + }, 1543 + "node_modules/lightningcss-win32-x64-msvc": { 1544 + "version": "1.30.2", 1545 + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz", 1546 + "integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==", 1547 + "cpu": [ 1548 + "x64" 1549 + ], 1550 + "license": "MPL-2.0", 1551 + "optional": true, 1552 + "os": [ 1553 + "win32" 1554 + ], 1555 + "engines": { 1556 + "node": ">= 12.0.0" 1557 + }, 1558 + "funding": { 1559 + "type": "opencollective", 1560 + "url": "https://opencollective.com/parcel" 1561 + } 1562 + }, 971 1563 "node_modules/loose-envify": { 972 1564 "version": "1.4.0", 973 1565 "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", ··· 978 1570 }, 979 1571 "bin": { 980 1572 "loose-envify": "cli.js" 1573 + } 1574 + }, 1575 + "node_modules/magic-string": { 1576 + "version": "0.30.21", 1577 + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", 1578 + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", 1579 + "license": "MIT", 1580 + "dependencies": { 1581 + "@jridgewell/sourcemap-codec": "^1.5.5" 981 1582 } 982 1583 }, 983 1584 "node_modules/math-intrinsics": { ··· 1059 1660 } 1060 1661 } 1061 1662 }, 1663 + "node_modules/next/node_modules/postcss": { 1664 + "version": "8.4.31", 1665 + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", 1666 + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", 1667 + "funding": [ 1668 + { 1669 + "type": "opencollective", 1670 + "url": "https://opencollective.com/postcss/" 1671 + }, 1672 + { 1673 + "type": "tidelift", 1674 + "url": "https://tidelift.com/funding/github/npm/postcss" 1675 + }, 1676 + { 1677 + "type": "github", 1678 + "url": "https://github.com/sponsors/ai" 1679 + } 1680 + ], 1681 + "license": "MIT", 1682 + "dependencies": { 1683 + "nanoid": "^3.3.6", 1684 + "picocolors": "^1.0.0", 1685 + "source-map-js": "^1.0.2" 1686 + }, 1687 + "engines": { 1688 + "node": "^10 || ^12 || >=14" 1689 + } 1690 + }, 1062 1691 "node_modules/object-assign": { 1063 1692 "version": "4.1.1", 1064 1693 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", ··· 1087 1716 "license": "ISC" 1088 1717 }, 1089 1718 "node_modules/postcss": { 1090 - "version": "8.4.31", 1091 - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", 1092 - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", 1719 + "version": "8.5.6", 1720 + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", 1721 + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", 1093 1722 "funding": [ 1094 1723 { 1095 1724 "type": "opencollective", ··· 1106 1735 ], 1107 1736 "license": "MIT", 1108 1737 "dependencies": { 1109 - "nanoid": "^3.3.6", 1110 - "picocolors": "^1.0.0", 1111 - "source-map-js": "^1.0.2" 1738 + "nanoid": "^3.3.11", 1739 + "picocolors": "^1.1.1", 1740 + "source-map-js": "^1.2.1" 1112 1741 }, 1113 1742 "engines": { 1114 1743 "node": "^10 || ^12 || >=14" ··· 1359 1988 "babel-plugin-macros": { 1360 1989 "optional": true 1361 1990 } 1991 + } 1992 + }, 1993 + "node_modules/tailwindcss": { 1994 + "version": "4.1.18", 1995 + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.18.tgz", 1996 + "integrity": "sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==", 1997 + "license": "MIT" 1998 + }, 1999 + "node_modules/tapable": { 2000 + "version": "2.3.0", 2001 + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", 2002 + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", 2003 + "license": "MIT", 2004 + "engines": { 2005 + "node": ">=6" 2006 + }, 2007 + "funding": { 2008 + "type": "opencollective", 2009 + "url": "https://opencollective.com/webpack" 1362 2010 } 1363 2011 }, 1364 2012 "node_modules/tslib": {
+4 -1
package.json
··· 8 8 "dependencies": { 9 9 "@stripe/react-stripe-js": "2.4.0", 10 10 "@stripe/stripe-js": "2.2.2", 11 + "@tailwindcss/postcss": "^4.1.18", 11 12 "@vercel/analytics": "^1.6.1", 12 13 "@vercel/speed-insights": "^1.3.1", 13 14 "next": "latest", 15 + "postcss": "^8.5.6", 14 16 "react": "18.2.0", 15 17 "react-dom": "18.2.0", 16 18 "server-only": "0.0.1", 17 - "stripe": "14.8.0" 19 + "stripe": "14.8.0", 20 + "tailwindcss": "^4.1.18" 18 21 }, 19 22 "devDependencies": { 20 23 "@types/node": "20.4.6",
+7
postcss.config.mjs
··· 1 + const config = { 2 + plugins: { 3 + "@tailwindcss/postcss": {}, 4 + }, 5 + }; 6 + 7 + export default config;
+2
styles.css app/globals.css
··· 1 + @import "tailwindcss"; 2 + 1 3 /* Variables */ 2 4 :root { 3 5 --body-color: #050505;