diff --git a/admin/scripts/image-resize.mjs b/admin/scripts/image-resize.mjs index 330269de1c..0cb0d9da68 100644 --- a/admin/scripts/image-resize.mjs +++ b/admin/scripts/image-resize.mjs @@ -9,6 +9,8 @@ import sharp from 'sharp'; import fs from 'fs/promises'; import path from 'path'; +// eslint-disable-next-line import/no-extraneous-dependencies +import imageSize from 'image-size'; const allImages = ( await fs.readdir(new URL('../../website/src/data/showcase', import.meta.url)) @@ -23,6 +25,12 @@ await Promise.all( `../../website/src/data/showcase/${img}`, import.meta.url, ).pathname; + const {width, height} = imageSize(imgPath); + if (width === 640 && height === 320) { + // Do not emit if no resized. Important because we + // can't guarantee idempotency during resize -> optimization + return; + } const data = await sharp(imgPath) .resize(640, 320, {fit: 'cover', position: 'top'}) .png() diff --git a/package.json b/package.json index 049bc46c8e..03c940482c 100644 --- a/package.json +++ b/package.json @@ -100,6 +100,7 @@ "eslint-plugin-react-hooks": "^4.3.0", "glob": "^7.1.6", "husky": "^5.0.9", + "image-size": "^1.0.0", "is-ci": "^3.0.0", "jest": "^26.6.3", "lerna": "^3.22.1", diff --git a/website/package.json b/website/package.json index 29fc069727..7f12557cfd 100644 --- a/website/package.json +++ b/website/package.json @@ -73,7 +73,6 @@ "@types/jest": "^26.0.20", "cross-env": "^7.0.3", "fs-extra": "^10.0.0", - "image-size": "^1.0.0", "raw-loader": "^4.0.2" } } diff --git a/website/src/data/__tests__/user.test.ts b/website/src/data/__tests__/user.test.ts index 3ad8466bb8..170985edcf 100644 --- a/website/src/data/__tests__/user.test.ts +++ b/website/src/data/__tests__/user.test.ts @@ -11,6 +11,7 @@ import {Joi} from '@docusaurus/utils-validation'; import fs from 'fs-extra'; import path from 'path'; +// eslint-disable-next-line import/no-extraneous-dependencies import imageSize from 'image-size'; declare global { diff --git a/website/src/data/showcase/agilets.png b/website/src/data/showcase/agilets.png index e3e0962cda..7ddb07be02 100644 Binary files a/website/src/data/showcase/agilets.png and b/website/src/data/showcase/agilets.png differ diff --git a/website/src/data/showcase/algolia.png b/website/src/data/showcase/algolia.png index 3d07cf6fc7..ccdaa7f60a 100644 Binary files a/website/src/data/showcase/algolia.png and b/website/src/data/showcase/algolia.png differ diff --git a/website/src/data/showcase/apache-apisix.png b/website/src/data/showcase/apache-apisix.png index 3352182b49..0be78033ba 100644 Binary files a/website/src/data/showcase/apache-apisix.png and b/website/src/data/showcase/apache-apisix.png differ diff --git a/website/src/data/showcase/benthos.png b/website/src/data/showcase/benthos.png index c76c9f1f07..2e9e3249ea 100644 Binary files a/website/src/data/showcase/benthos.png and b/website/src/data/showcase/benthos.png differ diff --git a/website/src/data/showcase/botonic.png b/website/src/data/showcase/botonic.png index 42537f42b0..a80afc6e7d 100644 Binary files a/website/src/data/showcase/botonic.png and b/website/src/data/showcase/botonic.png differ diff --git a/website/src/data/showcase/datagit.png b/website/src/data/showcase/datagit.png index 12da8c8f4f..bd1f065f9d 100644 Binary files a/website/src/data/showcase/datagit.png and b/website/src/data/showcase/datagit.png differ diff --git a/website/src/data/showcase/djamaile.png b/website/src/data/showcase/djamaile.png index 0a146b92de..ef2a05ec75 100644 Binary files a/website/src/data/showcase/djamaile.png and b/website/src/data/showcase/djamaile.png differ diff --git a/website/src/data/showcase/erxes.png b/website/src/data/showcase/erxes.png index 85354f6e98..144686f496 100644 Binary files a/website/src/data/showcase/erxes.png and b/website/src/data/showcase/erxes.png differ diff --git a/website/src/data/showcase/evantay.png b/website/src/data/showcase/evantay.png index d19ae04dd9..df76a01cbe 100644 Binary files a/website/src/data/showcase/evantay.png and b/website/src/data/showcase/evantay.png differ diff --git a/website/src/data/showcase/fbt.png b/website/src/data/showcase/fbt.png index 7988aa8f48..91e18105bb 100644 Binary files a/website/src/data/showcase/fbt.png and b/website/src/data/showcase/fbt.png differ diff --git a/website/src/data/showcase/firecms.png b/website/src/data/showcase/firecms.png index 8d4fcdb74a..f4bf6b8164 100644 Binary files a/website/src/data/showcase/firecms.png and b/website/src/data/showcase/firecms.png differ diff --git a/website/src/data/showcase/foal.png b/website/src/data/showcase/foal.png index ff3ae7e7c5..362883cb83 100644 Binary files a/website/src/data/showcase/foal.png and b/website/src/data/showcase/foal.png differ diff --git a/website/src/data/showcase/gladys-assistant.png b/website/src/data/showcase/gladys-assistant.png index 703ca92c6b..10a03faf2c 100644 Binary files a/website/src/data/showcase/gladys-assistant.png and b/website/src/data/showcase/gladys-assistant.png differ diff --git a/website/src/data/showcase/gotenberg.png b/website/src/data/showcase/gotenberg.png index a4c45459b2..1b8b9f3bff 100644 Binary files a/website/src/data/showcase/gotenberg.png and b/website/src/data/showcase/gotenberg.png differ diff --git a/website/src/data/showcase/graphql-mesh.png b/website/src/data/showcase/graphql-mesh.png index 6652d0c15a..ab6bf914b3 100644 Binary files a/website/src/data/showcase/graphql-mesh.png and b/website/src/data/showcase/graphql-mesh.png differ diff --git a/website/src/data/showcase/johnnyreilly.png b/website/src/data/showcase/johnnyreilly.png index 51e8b2e475..b4b5af4bac 100644 Binary files a/website/src/data/showcase/johnnyreilly.png and b/website/src/data/showcase/johnnyreilly.png differ diff --git a/website/src/data/showcase/nanos-world.png b/website/src/data/showcase/nanos-world.png index e5a05a2ce0..734b772813 100644 Binary files a/website/src/data/showcase/nanos-world.png and b/website/src/data/showcase/nanos-world.png differ diff --git a/website/src/data/showcase/react-navigation.png b/website/src/data/showcase/react-navigation.png index e2a5b84d14..1c6e3998e0 100644 Binary files a/website/src/data/showcase/react-navigation.png and b/website/src/data/showcase/react-navigation.png differ diff --git a/website/src/data/showcase/redis-developer.png b/website/src/data/showcase/redis-developer.png index 8c702126ec..ee87b0d6d1 100644 Binary files a/website/src/data/showcase/redis-developer.png and b/website/src/data/showcase/redis-developer.png differ diff --git a/website/src/data/showcase/rnrh.png b/website/src/data/showcase/rnrh.png index 576b15410e..1fd9891154 100644 Binary files a/website/src/data/showcase/rnrh.png and b/website/src/data/showcase/rnrh.png differ diff --git a/website/src/data/showcase/supabase.png b/website/src/data/showcase/supabase.png index 7ab30f7dad..847005ce49 100644 Binary files a/website/src/data/showcase/supabase.png and b/website/src/data/showcase/supabase.png differ diff --git a/website/src/data/showcase/wasp.png b/website/src/data/showcase/wasp.png index 614edf7410..aab9dac60b 100644 Binary files a/website/src/data/showcase/wasp.png and b/website/src/data/showcase/wasp.png differ diff --git a/website/src/data/showcase/zxuqian.png b/website/src/data/showcase/zxuqian.png index 63e063b2c9..ed1b8a98b1 100644 Binary files a/website/src/data/showcase/zxuqian.png and b/website/src/data/showcase/zxuqian.png differ diff --git a/website/src/data/users.tsx b/website/src/data/users.tsx index c6b9be1bd6..5a1b07e3c6 100644 --- a/website/src/data/users.tsx +++ b/website/src/data/users.tsx @@ -181,6 +181,7 @@ const Users: User[] = [ source: 'https://github.com/algolia/docsearch-website', tags: ['favorite', 'opensource', 'product'], }, + // TODO site unavailable on 12/31/2021 { title: 'Amphora Data', description: 'Connecting the world’s real-time information', @@ -233,6 +234,7 @@ const Users: User[] = [ source: 'https://gitlab.com/aweframework/awe', tags: ['opensource', 'i18n', 'versioning'], }, + // TODO site unavailable on 12/31/2021 { title: 'Axioms', description: 'Axioms Developer Hub and Documentation Portal', @@ -633,15 +635,6 @@ const Users: User[] = [ source: 'https://github.com/gotenberg/gotenberg.dev', tags: ['opensource', 'versioning'], }, - { - title: 'GraphQL Code Generator', - description: - 'Generate code from your GraphQL schema and operations with a simple CLI', - preview: require('./showcase/graphql-codegen.png'), - website: 'https://graphql-code-generator.com/', - source: 'https://github.com/dotansimha/graphql-code-generator', - tags: ['favorite', 'opensource', 'design'], - }, { title: 'GraphQL Inspector', description: 'An open-source tool to help you work with GraphQL', @@ -1470,7 +1463,7 @@ const Users: User[] = [ title: 'Supabase', description: 'Open Source Realtime and RESTful APIs for Postgres', preview: require('./showcase/supabase.png'), - website: 'https://www.supabase.io/', + website: 'https://www.supabase.io/docs', source: 'https://github.com/supabase/monorepo', tags: ['opensource', 'favorite', 'design', 'large', 'product'], }, @@ -1626,6 +1619,7 @@ const Users: User[] = [ source: 'https://github.com/webiny/docs.webiny.com', tags: ['opensource', 'product'], }, + // TODO site unavailable on 12/31/2021 { title: 'Wisdom', description: 'Session replay web analytics with open data SQL/S3 access.',