Trim oversized bento images + fix sizes; bump turbo (clears advisories)

- Cap the two wildly oversized bento source PNGs so Next can't serve giant variants:
  occupy-wallets 1200x837/393K -> 700x488/167K, neroswap 1584x672/1.8M -> 700x297/404K.
  (bauhaus/vegan are already 512px and self-cap; privacy-labs was already small.)
- Fix the bento <Image> sizes: object-contain height-constrains the image so it renders
  ~360px wide in either span; 66vw/100vw made Next serve up to ~750-1200w. Now
  '(max-width:768px) 90vw, 33vw'.
- Bump turbo 2.7.4 -> 2.9.16 (GHSA-hcf7-66rw-9f5r, GHSA-3qcw-2rhx-2726). pnpm audit
  now clean.
This commit is contained in:
jwinterm
2026-06-07 18:15:10 -04:00
parent d2d4ff997f
commit e1ff60180b
5 changed files with 63 additions and 61 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 403 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 394 KiB

After

Width:  |  Height:  |  Size: 167 KiB

@@ -67,7 +67,9 @@ function BentoCard({ item, delay }: { item: Item; delay: number }) {
alt={item.alt}
fill
className="object-contain p-2 opacity-60 transition-transform duration-1000 group-hover:scale-105"
sizes={item.span === 2 ? "(max-width: 768px) 100vw, 66vw" : "(max-width: 768px) 100vw, 33vw"}
{/* object-contain height-constrains the image, so it renders ~the same width
in either span (~360px); 66vw/100vw made Next serve up to ~750-1200w. */}
sizes="(max-width: 768px) 90vw, 33vw"
/>
</div>
</Card>
+1 -1
View File
@@ -12,7 +12,7 @@
"devDependencies": {
"eslint": "^9.0.0",
"prettier": "^3.2.0",
"turbo": "latest",
"turbo": "^2.9.16",
"typescript": "^5.4.0"
},
"packageManager": "pnpm@9.0.0",
+59 -59
View File
@@ -31,8 +31,8 @@ importers:
specifier: ^3.2.0
version: 3.8.0
turbo:
specifier: latest
version: 2.7.4
specifier: ^2.9.16
version: 2.9.16
typescript:
specifier: ^5.4.0
version: 5.9.3
@@ -555,6 +555,36 @@ packages:
peerDependencies:
tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1'
'@turbo/darwin-64@2.9.16':
resolution: {integrity: sha512-jLjApWTSNd7JZ5JaLYfelW1ytnGQOvB7ivl+2RD1xQvJTbi8I9gBjzcga7tDZVPyaxpl10YTfJt3BrYXR18KDw==}
cpu: [x64]
os: [darwin]
'@turbo/darwin-arm64@2.9.16':
resolution: {integrity: sha512-YPgrn+5HIGzrx0O2a631SV4MBQUe4W/DafMFUuBVgaU32PW9/OTT0ehviF0QSxTXuRJlHvW2eUTemddF5/spmw==}
cpu: [arm64]
os: [darwin]
'@turbo/linux-64@2.9.16':
resolution: {integrity: sha512-vAEf1H6l26lTpl9FJ/peQo1NUB8RC0sbEJJz5mPcUhHA2bPDup2x3CZPgo/bH8S4cUcBLm4FN3UHd5iUO2RAew==}
cpu: [x64]
os: [linux]
'@turbo/linux-arm64@2.9.16':
resolution: {integrity: sha512-xDBLR2PZg4BrQOchfG6svgpv5FCNJ2TOtT2psLdEJcdKo1BH+pnPs9Xj6pvUjgfkHbuvBOfeE4R6tvxMoQKDHQ==}
cpu: [arm64]
os: [linux]
'@turbo/windows-64@2.9.16':
resolution: {integrity: sha512-NBAJnaUiGdgkSzQwUIdOvkCkcpTSu58G/sBGa0mvBtzfvFOOgrQwepKOOQ8cp6sWM6OcKDNFj2p1dsZA1OWjPg==}
cpu: [x64]
os: [win32]
'@turbo/windows-arm64@2.9.16':
resolution: {integrity: sha512-Y7SJppD0Z8wjO3Ec0ZGd9KQ4Yv0BMnA8CIowj5Vp+OEVsosXDG2weK6/t1RRLfJmc2Ozrnd6y4DOgQys+mn3WQ==}
cpu: [arm64]
os: [win32]
'@tybys/wasm-util@0.10.1':
resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
@@ -2491,38 +2521,8 @@ packages:
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
turbo-darwin-64@2.7.4:
resolution: {integrity: sha512-xDR30ltfkSsRfGzABBckvl1nz1cZ3ssTujvdj+TPwOweeDRvZ0e06t5DS0rmRBvyKpgGs42K/EK6Mn2qLlFY9A==}
cpu: [x64]
os: [darwin]
turbo-darwin-arm64@2.7.4:
resolution: {integrity: sha512-P7sjqXtOL/+nYWPvcDGWhi8wf8M8mZHHB8XEzw2VX7VJrS8IGHyJHGD1AYfDvhAEcr7pnk3gGifz3/xyhI655w==}
cpu: [arm64]
os: [darwin]
turbo-linux-64@2.7.4:
resolution: {integrity: sha512-GofFOxRO/IhG8BcPyMSSB3Y2+oKQotsaYbHxL9yD6JPb20/o35eo+zUSyazOtilAwDHnak5dorAJFoFU8MIg2A==}
cpu: [x64]
os: [linux]
turbo-linux-arm64@2.7.4:
resolution: {integrity: sha512-+RQKgNjksVPxYAyAgmDV7w/1qj++qca+nSNTAOKGOfJiDtSvRKoci89oftJ6anGs00uamLKVEQ712TI/tfNAIw==}
cpu: [arm64]
os: [linux]
turbo-windows-64@2.7.4:
resolution: {integrity: sha512-rfak1+g+ON3czs1mDYsCS4X74ZmK6gOgRQTXjDICtzvR4o61paqtgAYtNPofcVsMWeF4wvCajSeoAkkeAnQ1kg==}
cpu: [x64]
os: [win32]
turbo-windows-arm64@2.7.4:
resolution: {integrity: sha512-1ZgBNjNRbDu/fPeqXuX9i26x3CJ/Y1gcwUpQ+Vp7kN9Un6RZ9kzs164f/knrjcu5E+szCRexVjRSJay1k5jApA==}
cpu: [arm64]
os: [win32]
turbo@2.7.4:
resolution: {integrity: sha512-bkO4AddmDishzJB2ze7aYYPaejMoJVfS0XnaR6RCdXFOY8JGJfQE+l9fKiV7uDPa5Ut44gmOWJL3894CIMeH9g==}
turbo@2.9.16:
resolution: {integrity: sha512-NqgRQy6j6dPYcdSdv0q1g9QsZg7SWg87RERM8otw/1AtKU2yTFVClOM7cbwKzOonZr/Ek1blTBucw64L9H0Bwg==}
hasBin: true
type-check@0.4.0:
@@ -3016,6 +3016,24 @@ snapshots:
postcss-selector-parser: 6.0.10
tailwindcss: 3.4.19(yaml@2.8.3)
'@turbo/darwin-64@2.9.16':
optional: true
'@turbo/darwin-arm64@2.9.16':
optional: true
'@turbo/linux-64@2.9.16':
optional: true
'@turbo/linux-arm64@2.9.16':
optional: true
'@turbo/windows-64@2.9.16':
optional: true
'@turbo/windows-arm64@2.9.16':
optional: true
'@tybys/wasm-util@0.10.1':
dependencies:
tslib: 2.8.1
@@ -5530,32 +5548,14 @@ snapshots:
tslib@2.8.1: {}
turbo-darwin-64@2.7.4:
optional: true
turbo-darwin-arm64@2.7.4:
optional: true
turbo-linux-64@2.7.4:
optional: true
turbo-linux-arm64@2.7.4:
optional: true
turbo-windows-64@2.7.4:
optional: true
turbo-windows-arm64@2.7.4:
optional: true
turbo@2.7.4:
turbo@2.9.16:
optionalDependencies:
turbo-darwin-64: 2.7.4
turbo-darwin-arm64: 2.7.4
turbo-linux-64: 2.7.4
turbo-linux-arm64: 2.7.4
turbo-windows-64: 2.7.4
turbo-windows-arm64: 2.7.4
'@turbo/darwin-64': 2.9.16
'@turbo/darwin-arm64': 2.9.16
'@turbo/linux-64': 2.9.16
'@turbo/linux-arm64': 2.9.16
'@turbo/windows-64': 2.9.16
'@turbo/windows-arm64': 2.9.16
type-check@0.4.0:
dependencies: