diff --git a/.eslintignore b/.eslintignore index 8343f84b97..a3f68ec578 100644 --- a/.eslintignore +++ b/.eslintignore @@ -6,7 +6,6 @@ build coverage jest.config.js jest.transform.js -scripts examples/ packages/lqip-loader/lib/ diff --git a/.github/workflows/showcase-test.yml b/.github/workflows/showcase-test.yml index f163f30b74..8513436db9 100644 --- a/.github/workflows/showcase-test.yml +++ b/.github/workflows/showcase-test.yml @@ -14,13 +14,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node }} + - name: Set up Node uses: actions/setup-node@v2 with: - node-version: ${{ matrix.node }} cache: yarn - name: Installation run: yarn - name: Test run: yarn test website/src/data/__tests__/user.test.ts - # TODO another job to optimize the images, see https://github.com/facebook/docusaurus/issues/5980 diff --git a/admin/scripts/image-resize.mjs b/admin/scripts/image-resize.mjs new file mode 100644 index 0000000000..be9606f26b --- /dev/null +++ b/admin/scripts/image-resize.mjs @@ -0,0 +1,34 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +// eslint-disable-next-line import/no-extraneous-dependencies +import sharp from 'sharp'; +import fs from 'fs/promises'; +import path from 'path'; + +const images = ( + await fs.readdir(new URL('../../website/src/data/showcase', import.meta.url)) +).filter((file) => ['.png', 'jpg', '.jpeg'].includes(path.extname(file))); + +await Promise.all( + images.map(async (img) => { + const imgPath = new URL( + `../../website/src/data/showcase/${img}`, + import.meta.url, + ).pathname; + const data = await sharp(imgPath) + .resize(640, 320, {fit: 'cover', position: 'top'}) + .png() + .toBuffer(); + await fs.writeFile(imgPath.replace(/jpe?g/, 'png'), data); + }), +); + +// You should also run optimizt `find website/src/data/showcase -type f -name '*.png'`. +// This is not included here because @funboxteam/optimizt doesn't seem to play well with M1 +// so I had to run this in a Rosetta terminal. +// TODO integrate this as part of the script diff --git a/package.json b/package.json index e99ba92105..049bc46c8e 100644 --- a/package.json +++ b/package.json @@ -114,6 +114,7 @@ "react-test-renderer": "^17.0.2", "rimraf": "^3.0.2", "serve": "^12.0.1", + "sharp": "^0.29.1", "stylelint": "^13.10.0", "tslib": "^2.3.1", "typescript": "^4.5.2" diff --git a/website/src/data/__tests__/user.test.ts b/website/src/data/__tests__/user.test.ts index 1c952b4b95..3ad8466bb8 100644 --- a/website/src/data/__tests__/user.test.ts +++ b/website/src/data/__tests__/user.test.ts @@ -6,162 +6,93 @@ */ import {TagList, sortedUsers, type User} from '../users'; -import {difference} from '@site/src/utils/jsUtils'; +// eslint-disable-next-line import/no-extraneous-dependencies +import {Joi} from '@docusaurus/utils-validation'; import fs from 'fs-extra'; import path from 'path'; import imageSize from 'image-size'; -describe('users', () => { - test('are valid', () => { - sortedUsers.forEach(ensureUserValid); - }); - - test('have valid images', async () => { - const minCardImageWidth = 304; - const minCardImageHeight = 150; - const minCardImageHeightScaled = 140; - const imageDir = path.join(__dirname, '../showcase'); - - const files = await fs.readdir(imageDir); - - // eslint-disable-next-line no-restricted-syntax - for (const file of files) { - const size = imageSize(path.join(imageDir, file)); - - if (size.width! < minCardImageWidth) { - throw new Error( - `Image width should be >= ${minCardImageWidth} -Image=${file}`, - ); - } - if (size.height! < minCardImageHeight) { - throw new Error( - `Image height should be >= ${minCardImageHeight} -Image=${file}`, - ); - } - - const scaledHeight = size.height! / (size.width! / minCardImageWidth); - if (scaledHeight < minCardImageHeightScaled) { - throw new Error( - `Image height is too small compared to width -After downscaling to width=${minCardImageWidth}, height would be ${scaledHeight} while the minimum is ${minCardImageHeightScaled} -Image=${file}`, - ); - } +declare global { + // eslint-disable-next-line @typescript-eslint/no-namespace + namespace jest { + interface Matchers { + toHaveGoodDimensions: () => R; } - }); -}); - -// TODO, refactor legacy test code -// Fail-fast on common errors -function ensureUserValid(user: User) { - function checkFields() { - const keys = Object.keys(user); - const validKeys = [ - 'title', - 'description', - 'preview', - 'website', - 'source', - 'tags', - ]; - const unknownKeys = difference(keys, validKeys); - if (unknownKeys.length > 0) { - throw new Error( - `Site contains unknown attribute names=[${unknownKeys.join(',')}]`, - ); - } - } - - function checkTitle() { - if (!user.title) { - throw new Error('Site title is missing'); - } - } - - function checkDescription() { - if (!user.description) { - throw new Error('Site description is missing'); - } - } - - function checkWebsite() { - if (!user.website) { - throw new Error('Site website is missing'); - } - const isHttpUrl = - user.website.startsWith('http://') || user.website.startsWith('https://'); - if (!isHttpUrl) { - throw new Error( - `Site website does not look like a valid url: ${user.website}`, - ); - } - } - - function checkPreview() { - if ( - !user.preview || - (user.preview instanceof String && - (user.preview.startsWith('http') || user.preview.startsWith('//'))) - ) { - throw new Error( - `Site has bad image preview=[${user.preview}].\nThe image should be hosted on Docusaurus site, and not use remote HTTP or HTTPS URLs`, - ); - } - } - - function checkTags() { - if ( - !user.tags || - !(user.tags instanceof Array) || - (user.tags as string[]).includes('') - ) { - throw new Error(`Bad showcase tags=[${JSON.stringify(user.tags)}]`); - } - const unknownTags = difference(user.tags, TagList); - if (unknownTags.length > 0) { - throw new Error( - `Unknown tags=[${unknownTags.join( - ',', - )}\nThe available tags are ${TagList.join(',')}`, - ); - } - } - - function checkOpenSource() { - if (typeof user.source === 'undefined') { - throw new Error( - "The source attribute is required.\nIf your Docusaurus site is not open-source, please make it explicit with 'source: null'", - ); - } else { - const hasOpenSourceTag = user.tags.includes('opensource'); - if (user.source === null && hasOpenSourceTag) { - throw new Error( - "You can't add the opensource tag to a site that does not have a link to source code.", - ); - } else if (user.source && !hasOpenSourceTag) { - throw new Error( - "For open-source sites, please add the 'opensource' tag", - ); - } - } - } - - try { - checkFields(); - checkTitle(); - checkDescription(); - checkWebsite(); - checkPreview(); - checkTags(); - checkOpenSource(); - } catch (e) { - throw new Error( - `Showcase site with title=${user.title} contains errors:\n${ - (e as Error).message - }`, - ); } } + +expect.extend({ + toHaveGoodDimensions({width, height}: {width: number; height: number}) { + // Put this one first because aspect ratio is harder to fix than resizing (need to take another screenshot) + if (width / height < 0.5) { + return { + pass: false, + message: () => + `The preview image's width is ${width} and height is ${height}. To make sure it takes up the entire container in our showcase card, it needs to have a minimum aspect ratio of 2:1. Please make your image taller.`, + }; + } else if (width < 640) { + return { + pass: false, + message: () => + `The preview image's width is ${width}, but we require a minimum 640. You can either resize it locally, or you can wait for the maintainer to resize it for you.`, + }; + } + return { + pass: true, + message: () => "The preview image's dimensions are good", + }; + }, +}); + +describe('users', () => { + sortedUsers.forEach((user) => { + test(user.title, () => { + Joi.attempt( + user, + Joi.object({ + title: Joi.string().required(), + description: Joi.string().required(), + website: Joi.string() + .pattern(/^https?:\/\//) + .message('') + .required(), + // The preview should be jest/emptyModule + preview: Joi.object({}).unknown(false).required().messages({ + 'object.base': + 'The image should be hosted on Docusaurus site, and not use remote HTTP or HTTPS URLs. It must be imported with require().', + }), + tags: Joi.array() + .items(...TagList) + .required(), + source: Joi.string().allow(null).required().messages({ + 'any.required': + "The source attribute is required.\nIf your Docusaurus site is not open-source, please make it explicit with 'source: null'.", + }), + }).unknown(false), + ); + if (user.tags.includes('opensource') && user.source === null) { + throw new Error( + "You can't add the 'opensource' tag to a site that does not have a link to source code. Please add your source code, or remove this tag.", + ); + } else if (user.source !== null && !user.tags.includes('opensource')) { + throw new Error( + "For open-source sites, please add the 'opensource' tag.", + ); + } + }); + }); + + const imageDir = path.join(__dirname, '../showcase'); + const files = fs + .readdirSync(imageDir) + .filter((file) => ['.png', 'jpg', '.jpeg'].includes(path.extname(file))); + + files.forEach((file) => { + test(file, () => { + const size = imageSize(path.join(imageDir, file)); + + expect(size).toHaveGoodDimensions(); + }); + }); +}); diff --git a/website/src/data/showcase/agilets.png b/website/src/data/showcase/agilets.png index 20e3899014..e3e0962cda 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/aide_jeune.png b/website/src/data/showcase/aide_jeune.png index 3402cbb01f..2579583310 100644 Binary files a/website/src/data/showcase/aide_jeune.png and b/website/src/data/showcase/aide_jeune.png differ diff --git a/website/src/data/showcase/aispeaker.png b/website/src/data/showcase/aispeaker.png index 3aca339768..a7f89e1b43 100644 Binary files a/website/src/data/showcase/aispeaker.png and b/website/src/data/showcase/aispeaker.png differ diff --git a/website/src/data/showcase/algolia.png b/website/src/data/showcase/algolia.png index f57384ed18..3d07cf6fc7 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/amphora.png b/website/src/data/showcase/amphora.png index 9ee834354d..a684d15269 100644 Binary files a/website/src/data/showcase/amphora.png and b/website/src/data/showcase/amphora.png differ diff --git a/website/src/data/showcase/apache-apisix.png b/website/src/data/showcase/apache-apisix.png index a491303306..e364a4d45d 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/apexfp.png b/website/src/data/showcase/apexfp.png index dda28003ae..bbe6fbc707 100644 Binary files a/website/src/data/showcase/apexfp.png and b/website/src/data/showcase/apexfp.png differ diff --git a/website/src/data/showcase/astronomer.png b/website/src/data/showcase/astronomer.png index 97e148a909..1cff505bbb 100644 Binary files a/website/src/data/showcase/astronomer.png and b/website/src/data/showcase/astronomer.png differ diff --git a/website/src/data/showcase/attobot.png b/website/src/data/showcase/attobot.png index e792ec2cbc..46405e8627 100644 Binary files a/website/src/data/showcase/attobot.png and b/website/src/data/showcase/attobot.png differ diff --git a/website/src/data/showcase/awe-framework.png b/website/src/data/showcase/awe-framework.png index 9e8eb5c1ca..b34fbd77d2 100644 Binary files a/website/src/data/showcase/awe-framework.png and b/website/src/data/showcase/awe-framework.png differ diff --git a/website/src/data/showcase/axioms.png b/website/src/data/showcase/axioms.png index 83dcaca794..731c74bbe7 100644 Binary files a/website/src/data/showcase/axioms.png and b/website/src/data/showcase/axioms.png differ diff --git a/website/src/data/showcase/benthos.png b/website/src/data/showcase/benthos.png index 7715c0bde9..29710d3cb1 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/blinkshell.png b/website/src/data/showcase/blinkshell.png index 8d77d19d21..e2bd8adec0 100644 Binary files a/website/src/data/showcase/blinkshell.png and b/website/src/data/showcase/blinkshell.png differ diff --git a/website/src/data/showcase/blogasaurus.png b/website/src/data/showcase/blogasaurus.png index d49cd70cc6..b08022f490 100644 Binary files a/website/src/data/showcase/blogasaurus.png and b/website/src/data/showcase/blogasaurus.png differ diff --git a/website/src/data/showcase/botonic.png b/website/src/data/showcase/botonic.png index c0ecb106bc..42537f42b0 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/boxyhq.png b/website/src/data/showcase/boxyhq.png index 864725a4cf..4a720c082a 100644 Binary files a/website/src/data/showcase/boxyhq.png and b/website/src/data/showcase/boxyhq.png differ diff --git a/website/src/data/showcase/build-tracker.png b/website/src/data/showcase/build-tracker.png index 95bb50e1f5..c2e970397d 100644 Binary files a/website/src/data/showcase/build-tracker.png and b/website/src/data/showcase/build-tracker.png differ diff --git a/website/src/data/showcase/claritychallenge.png b/website/src/data/showcase/claritychallenge.png index 3b62c52940..258e9e6bad 100644 Binary files a/website/src/data/showcase/claritychallenge.png and b/website/src/data/showcase/claritychallenge.png differ diff --git a/website/src/data/showcase/cloudywithachanceofbigdata.png b/website/src/data/showcase/cloudywithachanceofbigdata.png index b9763859b0..a9780332d1 100644 Binary files a/website/src/data/showcase/cloudywithachanceofbigdata.png and b/website/src/data/showcase/cloudywithachanceofbigdata.png differ diff --git a/website/src/data/showcase/clutch.png b/website/src/data/showcase/clutch.png index 3ff2cc88aa..dd84085ca0 100644 Binary files a/website/src/data/showcase/clutch.png and b/website/src/data/showcase/clutch.png differ diff --git a/website/src/data/showcase/codeyourfuture.png b/website/src/data/showcase/codeyourfuture.png index b7b699e5a2..97df3790f9 100644 Binary files a/website/src/data/showcase/codeyourfuture.png and b/website/src/data/showcase/codeyourfuture.png differ diff --git a/website/src/data/showcase/componentkit.png b/website/src/data/showcase/componentkit.png index 4e414152fc..4f097b52cf 100644 Binary files a/website/src/data/showcase/componentkit.png and b/website/src/data/showcase/componentkit.png differ diff --git a/website/src/data/showcase/configcat.png b/website/src/data/showcase/configcat.png index 6e2bbab756..4608dc9aad 100644 Binary files a/website/src/data/showcase/configcat.png and b/website/src/data/showcase/configcat.png differ diff --git a/website/src/data/showcase/console-table.png b/website/src/data/showcase/console-table.png index 32170aa6e5..8cbc8235e8 100644 Binary files a/website/src/data/showcase/console-table.png and b/website/src/data/showcase/console-table.png differ diff --git a/website/src/data/showcase/countrystatecity.png b/website/src/data/showcase/countrystatecity.png index 925d9a8dd6..0542714c03 100644 Binary files a/website/src/data/showcase/countrystatecity.png and b/website/src/data/showcase/countrystatecity.png differ diff --git a/website/src/data/showcase/create-react-app.png b/website/src/data/showcase/create-react-app.png index 37966a3cf8..2aaa4582e1 100644 Binary files a/website/src/data/showcase/create-react-app.png and b/website/src/data/showcase/create-react-app.png differ diff --git a/website/src/data/showcase/cryptodevhub.png b/website/src/data/showcase/cryptodevhub.png index cfe01a58af..f1892e915d 100644 Binary files a/website/src/data/showcase/cryptodevhub.png and b/website/src/data/showcase/cryptodevhub.png differ diff --git a/website/src/data/showcase/daily-digest-covid-19-in-france.png b/website/src/data/showcase/daily-digest-covid-19-in-france.png index 4f6ff2882d..4bd90728bf 100644 Binary files a/website/src/data/showcase/daily-digest-covid-19-in-france.png and b/website/src/data/showcase/daily-digest-covid-19-in-france.png differ diff --git a/website/src/data/showcase/darklang.png b/website/src/data/showcase/darklang.png index 4910c5018d..a3c0003150 100644 Binary files a/website/src/data/showcase/darklang.png and b/website/src/data/showcase/darklang.png differ diff --git a/website/src/data/showcase/dart-code-metrics.png b/website/src/data/showcase/dart-code-metrics.png index 180acd3281..bae1593464 100644 Binary files a/website/src/data/showcase/dart-code-metrics.png and b/website/src/data/showcase/dart-code-metrics.png differ diff --git a/website/src/data/showcase/datagit.png b/website/src/data/showcase/datagit.png index c3c1ef4bea..12da8c8f4f 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/devspace.png b/website/src/data/showcase/devspace.png index 34e9e811c2..b918361374 100644 Binary files a/website/src/data/showcase/devspace.png and b/website/src/data/showcase/devspace.png differ diff --git a/website/src/data/showcase/digitalsupportservices.png b/website/src/data/showcase/digitalsupportservices.png index ea9c3b10e8..77e6cb0110 100644 Binary files a/website/src/data/showcase/digitalsupportservices.png and b/website/src/data/showcase/digitalsupportservices.png differ diff --git a/website/src/data/showcase/dimeschedulersdk.png b/website/src/data/showcase/dimeschedulersdk.png index 9a92c4661d..129ddda8c8 100644 Binary files a/website/src/data/showcase/dimeschedulersdk.png and b/website/src/data/showcase/dimeschedulersdk.png differ diff --git a/website/src/data/showcase/discordresources.png b/website/src/data/showcase/discordresources.png index 583800b6dc..238a2d8e1f 100644 Binary files a/website/src/data/showcase/discordresources.png and b/website/src/data/showcase/discordresources.png differ diff --git a/website/src/data/showcase/djamaile.png b/website/src/data/showcase/djamaile.png index d31c220e08..0a146b92de 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/docs-taro-zone.png b/website/src/data/showcase/docs-taro-zone.png index c629532a4e..e7184279da 100644 Binary files a/website/src/data/showcase/docs-taro-zone.png and b/website/src/data/showcase/docs-taro-zone.png differ diff --git a/website/src/data/showcase/draftjs.png b/website/src/data/showcase/draftjs.png index 2ef57b455a..f7191dd6a1 100644 Binary files a/website/src/data/showcase/draftjs.png and b/website/src/data/showcase/draftjs.png differ diff --git a/website/src/data/showcase/drayman.png b/website/src/data/showcase/drayman.png index 3b64554522..82af9d87ad 100644 Binary files a/website/src/data/showcase/drayman.png and b/website/src/data/showcase/drayman.png differ diff --git a/website/src/data/showcase/dyte.png b/website/src/data/showcase/dyte.png index 9a4c244793..ba4d3b09d7 100644 Binary files a/website/src/data/showcase/dyte.png and b/website/src/data/showcase/dyte.png differ diff --git a/website/src/data/showcase/easyjwt.png b/website/src/data/showcase/easyjwt.png index d9c8fb9fd7..f7835ca72b 100644 Binary files a/website/src/data/showcase/easyjwt.png and b/website/src/data/showcase/easyjwt.png differ diff --git a/website/src/data/showcase/eightshift-docs.png b/website/src/data/showcase/eightshift-docs.png index d6b5d8f545..7de00705b5 100644 Binary files a/website/src/data/showcase/eightshift-docs.png and b/website/src/data/showcase/eightshift-docs.png differ diff --git a/website/src/data/showcase/enarx.png b/website/src/data/showcase/enarx.png index 91c6824224..cd339d4d9b 100644 Binary files a/website/src/data/showcase/enarx.png and b/website/src/data/showcase/enarx.png differ diff --git a/website/src/data/showcase/eric.png b/website/src/data/showcase/eric.png index 2c62a28124..ba5fd02b76 100644 Binary files a/website/src/data/showcase/eric.png and b/website/src/data/showcase/eric.png differ diff --git a/website/src/data/showcase/erxes.png b/website/src/data/showcase/erxes.png index c4974a6fd9..85354f6e98 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/eta.png b/website/src/data/showcase/eta.png index 392b618f84..ccaefa897a 100644 Binary files a/website/src/data/showcase/eta.png and b/website/src/data/showcase/eta.png differ diff --git a/website/src/data/showcase/evantay.png b/website/src/data/showcase/evantay.png index df18dfc8f5..d19ae04dd9 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 fce6295aee..7988aa8f48 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 b76eb93997..8d4fcdb74a 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/flagsmith.png b/website/src/data/showcase/flagsmith.png index 438ef1e026..2ae047697e 100644 Binary files a/website/src/data/showcase/flagsmith.png and b/website/src/data/showcase/flagsmith.png differ diff --git a/website/src/data/showcase/flatifycss.png b/website/src/data/showcase/flatifycss.png index 1b626eaf66..a66d2c48ba 100644 Binary files a/website/src/data/showcase/flatifycss.png and b/website/src/data/showcase/flatifycss.png differ diff --git a/website/src/data/showcase/flexit.png b/website/src/data/showcase/flexit.png index 2693ca3b07..4f6b1f2629 100644 Binary files a/website/src/data/showcase/flexit.png and b/website/src/data/showcase/flexit.png differ diff --git a/website/src/data/showcase/flipper.png b/website/src/data/showcase/flipper.png index f397ac2e5e..968a590367 100644 Binary files a/website/src/data/showcase/flipper.png and b/website/src/data/showcase/flipper.png differ diff --git a/website/src/data/showcase/flux.png b/website/src/data/showcase/flux.png index 1798a5623b..d1105bc388 100644 Binary files a/website/src/data/showcase/flux.png and b/website/src/data/showcase/flux.png differ diff --git a/website/src/data/showcase/foal.png b/website/src/data/showcase/foal.png index 6740721ad8..ff3ae7e7c5 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/formatjs.png b/website/src/data/showcase/formatjs.png index ca44cfc9c3..850bc4d415 100644 Binary files a/website/src/data/showcase/formatjs.png and b/website/src/data/showcase/formatjs.png differ diff --git a/website/src/data/showcase/froggit.png b/website/src/data/showcase/froggit.png index 4dcb5b39d9..c49f464635 100644 Binary files a/website/src/data/showcase/froggit.png and b/website/src/data/showcase/froggit.png differ diff --git a/website/src/data/showcase/getorca.org-dark.png b/website/src/data/showcase/getorca.org-dark.png index 13d845c28b..49ea9647bc 100644 Binary files a/website/src/data/showcase/getorca.org-dark.png and b/website/src/data/showcase/getorca.org-dark.png differ diff --git a/website/src/data/showcase/gladys-assistant.png b/website/src/data/showcase/gladys-assistant.png index 9629f9f422..703ca92c6b 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 051fced783..a4c45459b2 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-codegen.png b/website/src/data/showcase/graphql-codegen.png index ce7ab5973e..8583960fd8 100644 Binary files a/website/src/data/showcase/graphql-codegen.png and b/website/src/data/showcase/graphql-codegen.png differ diff --git a/website/src/data/showcase/graphql-inspector.png b/website/src/data/showcase/graphql-inspector.png index 66d597e825..1e24ea6439 100644 Binary files a/website/src/data/showcase/graphql-inspector.png and b/website/src/data/showcase/graphql-inspector.png differ diff --git a/website/src/data/showcase/graphql-mesh.png b/website/src/data/showcase/graphql-mesh.png index 093b3bb57f..6652d0c15a 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/gtfs-to-html.png b/website/src/data/showcase/gtfs-to-html.png index e79d1b2484..7861a2da14 100644 Binary files a/website/src/data/showcase/gtfs-to-html.png and b/website/src/data/showcase/gtfs-to-html.png differ diff --git a/website/src/data/showcase/gulp.png b/website/src/data/showcase/gulp.png index 4e5e01aae8..a6dbfd6fdc 100644 Binary files a/website/src/data/showcase/gulp.png and b/website/src/data/showcase/gulp.png differ diff --git a/website/src/data/showcase/haochen.png b/website/src/data/showcase/haochen.png index c9de4d3d8f..4042a6dc14 100644 Binary files a/website/src/data/showcase/haochen.png and b/website/src/data/showcase/haochen.png differ diff --git a/website/src/data/showcase/hashnode.png b/website/src/data/showcase/hashnode.png index 72f4448322..64fe69f5e8 100644 Binary files a/website/src/data/showcase/hashnode.png and b/website/src/data/showcase/hashnode.png differ diff --git a/website/src/data/showcase/hcaptcha.png b/website/src/data/showcase/hcaptcha.png index 569e5daaa0..1e702af6d3 100644 Binary files a/website/src/data/showcase/hcaptcha.png and b/website/src/data/showcase/hcaptcha.png differ diff --git a/website/src/data/showcase/hermes.png b/website/src/data/showcase/hermes.png index 2d39c6ddd2..0cf8e8104d 100644 Binary files a/website/src/data/showcase/hermes.png and b/website/src/data/showcase/hermes.png differ diff --git a/website/src/data/showcase/home-assistant.png b/website/src/data/showcase/home-assistant.png index b6ffd130fb..8fb5a4c152 100644 Binary files a/website/src/data/showcase/home-assistant.png and b/website/src/data/showcase/home-assistant.png differ diff --git a/website/src/data/showcase/idb.png b/website/src/data/showcase/idb.png index a5338f349f..a782088b19 100644 Binary files a/website/src/data/showcase/idb.png and b/website/src/data/showcase/idb.png differ diff --git a/website/src/data/showcase/indent.png b/website/src/data/showcase/indent.png index 77a99aa6f4..498a257a9b 100644 Binary files a/website/src/data/showcase/indent.png and b/website/src/data/showcase/indent.png differ diff --git a/website/src/data/showcase/infraql-docs.png b/website/src/data/showcase/infraql-docs.png index fc75eadf67..4a7fbaa714 100644 Binary files a/website/src/data/showcase/infraql-docs.png and b/website/src/data/showcase/infraql-docs.png differ diff --git a/website/src/data/showcase/intelagent.png b/website/src/data/showcase/intelagent.png index 53fc4050f9..7fd2d2785d 100644 Binary files a/website/src/data/showcase/intelagent.png and b/website/src/data/showcase/intelagent.png differ diff --git a/website/src/data/showcase/ionic.png b/website/src/data/showcase/ionic.png index 1f9485ecdc..6f5209588c 100644 Binary files a/website/src/data/showcase/ionic.png and b/website/src/data/showcase/ionic.png differ diff --git a/website/src/data/showcase/iota-wiki.png b/website/src/data/showcase/iota-wiki.png index 15e056e51c..69b6de03fc 100644 Binary files a/website/src/data/showcase/iota-wiki.png and b/website/src/data/showcase/iota-wiki.png differ diff --git a/website/src/data/showcase/jest.png b/website/src/data/showcase/jest.png index c120b2ed0f..e7542227d9 100644 Binary files a/website/src/data/showcase/jest.png and b/website/src/data/showcase/jest.png differ diff --git a/website/src/data/showcase/joelpo.png b/website/src/data/showcase/joelpo.png index 38c5273950..b93d8f7955 100644 Binary files a/website/src/data/showcase/joelpo.png and b/website/src/data/showcase/joelpo.png differ diff --git a/website/src/data/showcase/johnnyreilly.png b/website/src/data/showcase/johnnyreilly.png index 85986be098..51e8b2e475 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/juffalow.png b/website/src/data/showcase/juffalow.png index 6b18e068e1..a616edcc08 100644 Binary files a/website/src/data/showcase/juffalow.png and b/website/src/data/showcase/juffalow.png differ diff --git a/website/src/data/showcase/khyron_realm.png b/website/src/data/showcase/khyron_realm.png index 157ef44103..110e8a77e7 100644 Binary files a/website/src/data/showcase/khyron_realm.png and b/website/src/data/showcase/khyron_realm.png differ diff --git a/website/src/data/showcase/kosko.png b/website/src/data/showcase/kosko.png index 096c69fab6..2196b54a3a 100644 Binary files a/website/src/data/showcase/kosko.png and b/website/src/data/showcase/kosko.png differ diff --git a/website/src/data/showcase/kotest.jpg b/website/src/data/showcase/kotest.jpg deleted file mode 100644 index 904b9c4ed0..0000000000 Binary files a/website/src/data/showcase/kotest.jpg and /dev/null differ diff --git a/website/src/data/showcase/kotest.png b/website/src/data/showcase/kotest.png new file mode 100644 index 0000000000..2951caa20a Binary files /dev/null and b/website/src/data/showcase/kotest.png differ diff --git a/website/src/data/showcase/kubevela.png b/website/src/data/showcase/kubevela.png index db775d92ab..c88d362924 100644 Binary files a/website/src/data/showcase/kubevela.png and b/website/src/data/showcase/kubevela.png differ diff --git a/website/src/data/showcase/labviewbook.png b/website/src/data/showcase/labviewbook.png index 4b7bdf5d94..6769a9eb57 100644 Binary files a/website/src/data/showcase/labviewbook.png and b/website/src/data/showcase/labviewbook.png differ diff --git a/website/src/data/showcase/leon.png b/website/src/data/showcase/leon.png index afa41299a6..2bdd8b6ce7 100644 Binary files a/website/src/data/showcase/leon.png and b/website/src/data/showcase/leon.png differ diff --git a/website/src/data/showcase/livekit.png b/website/src/data/showcase/livekit.png index 7efc98854a..cbbb49e1f4 100644 Binary files a/website/src/data/showcase/livekit.png and b/website/src/data/showcase/livekit.png differ diff --git a/website/src/data/showcase/lux-algo.png b/website/src/data/showcase/lux-algo.png index 39a409a11b..aac98d9241 100644 Binary files a/website/src/data/showcase/lux-algo.png and b/website/src/data/showcase/lux-algo.png differ diff --git a/website/src/data/showcase/mailgo.png b/website/src/data/showcase/mailgo.png index 6a14b1c9bf..f43069fef9 100644 Binary files a/website/src/data/showcase/mailgo.png and b/website/src/data/showcase/mailgo.png differ diff --git a/website/src/data/showcase/mapillaryjs.png b/website/src/data/showcase/mapillaryjs.png index 0b95bcd3d1..e367eeea3f 100644 Binary files a/website/src/data/showcase/mapillaryjs.png and b/website/src/data/showcase/mapillaryjs.png differ diff --git a/website/src/data/showcase/mediamachine.png b/website/src/data/showcase/mediamachine.png index 69d83d1285..00717f4153 100644 Binary files a/website/src/data/showcase/mediamachine.png and b/website/src/data/showcase/mediamachine.png differ diff --git a/website/src/data/showcase/meli.png b/website/src/data/showcase/meli.png index 35a26f6473..53f085b0a8 100644 Binary files a/website/src/data/showcase/meli.png and b/website/src/data/showcase/meli.png differ diff --git a/website/src/data/showcase/metro.png b/website/src/data/showcase/metro.png index 759d321566..e4cf40c6ad 100644 Binary files a/website/src/data/showcase/metro.png and b/website/src/data/showcase/metro.png differ diff --git a/website/src/data/showcase/mia-platform.png b/website/src/data/showcase/mia-platform.png index 721c68ab32..3279f412e5 100644 Binary files a/website/src/data/showcase/mia-platform.png and b/website/src/data/showcase/mia-platform.png differ diff --git a/website/src/data/showcase/mikro-orm.png b/website/src/data/showcase/mikro-orm.png index 5b2cd98528..3a2aa008a7 100644 Binary files a/website/src/data/showcase/mikro-orm.png and b/website/src/data/showcase/mikro-orm.png differ diff --git a/website/src/data/showcase/mintmetrics.png b/website/src/data/showcase/mintmetrics.png index 5ec6097b52..33f7370806 100644 Binary files a/website/src/data/showcase/mintmetrics.png and b/website/src/data/showcase/mintmetrics.png differ diff --git a/website/src/data/showcase/mojaglobal.png b/website/src/data/showcase/mojaglobal.png index f7747e28fe..724038c7d6 100644 Binary files a/website/src/data/showcase/mojaglobal.png and b/website/src/data/showcase/mojaglobal.png differ diff --git a/website/src/data/showcase/molecule-home.png b/website/src/data/showcase/molecule-home.png index 032aaed576..e5aaeaf4a2 100644 Binary files a/website/src/data/showcase/molecule-home.png and b/website/src/data/showcase/molecule-home.png differ diff --git a/website/src/data/showcase/motion-layout.png b/website/src/data/showcase/motion-layout.png index 3253143e55..fbcdbf626b 100644 Binary files a/website/src/data/showcase/motion-layout.png and b/website/src/data/showcase/motion-layout.png differ diff --git a/website/src/data/showcase/nanos-world.png b/website/src/data/showcase/nanos-world.png index 1524a72d72..e5a05a2ce0 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/netbootxyz.png b/website/src/data/showcase/netbootxyz.png index 097d4a0c1c..01c93dc929 100644 Binary files a/website/src/data/showcase/netbootxyz.png and b/website/src/data/showcase/netbootxyz.png differ diff --git a/website/src/data/showcase/netdata.png b/website/src/data/showcase/netdata.png index 6e62262672..eafd12ccc2 100644 Binary files a/website/src/data/showcase/netdata.png and b/website/src/data/showcase/netdata.png differ diff --git a/website/src/data/showcase/neutronjs.png b/website/src/data/showcase/neutronjs.png index 85494f28a3..d9700947a3 100644 Binary files a/website/src/data/showcase/neutronjs.png and b/website/src/data/showcase/neutronjs.png differ diff --git a/website/src/data/showcase/nextauthjs.png b/website/src/data/showcase/nextauthjs.png index 422a22723a..470fe3513d 100644 Binary files a/website/src/data/showcase/nextauthjs.png and b/website/src/data/showcase/nextauthjs.png differ diff --git a/website/src/data/showcase/nocalhost.png b/website/src/data/showcase/nocalhost.png index d5419126e5..2c254b3ad0 100644 Binary files a/website/src/data/showcase/nocalhost.png and b/website/src/data/showcase/nocalhost.png differ diff --git a/website/src/data/showcase/node-serialport.png b/website/src/data/showcase/node-serialport.png index 5fec277367..22f49389a7 100644 Binary files a/website/src/data/showcase/node-serialport.png and b/website/src/data/showcase/node-serialport.png differ diff --git a/website/src/data/showcase/nodify.png b/website/src/data/showcase/nodify.png index 4658a0bfe1..32f9a65ddf 100644 Binary files a/website/src/data/showcase/nodify.png and b/website/src/data/showcase/nodify.png differ diff --git a/website/src/data/showcase/ocpeasy.png b/website/src/data/showcase/ocpeasy.png index 2b058c3eae..42c6dd2b16 100644 Binary files a/website/src/data/showcase/ocpeasy.png and b/website/src/data/showcase/ocpeasy.png differ diff --git a/website/src/data/showcase/orbitjs.png b/website/src/data/showcase/orbitjs.png index c0c99bccde..442c5cff26 100644 Binary files a/website/src/data/showcase/orbitjs.png and b/website/src/data/showcase/orbitjs.png differ diff --git a/website/src/data/showcase/ory.png b/website/src/data/showcase/ory.png index 3d88e31a8b..c3264f8d64 100644 Binary files a/website/src/data/showcase/ory.png and b/website/src/data/showcase/ory.png differ diff --git a/website/src/data/showcase/oxidizer.png b/website/src/data/showcase/oxidizer.png index f856481bdc..6c1e0471a4 100644 Binary files a/website/src/data/showcase/oxidizer.png and b/website/src/data/showcase/oxidizer.png differ diff --git a/website/src/data/showcase/patrikmasiar.png b/website/src/data/showcase/patrikmasiar.png index dfd9cb6a74..d17c1df89f 100644 Binary files a/website/src/data/showcase/patrikmasiar.png and b/website/src/data/showcase/patrikmasiar.png differ diff --git a/website/src/data/showcase/paubox.png b/website/src/data/showcase/paubox.png index cbc6624db2..2af9a13a19 100644 Binary files a/website/src/data/showcase/paubox.png and b/website/src/data/showcase/paubox.png differ diff --git a/website/src/data/showcase/pearl-ui.png b/website/src/data/showcase/pearl-ui.png index 426a13cdeb..84acf00cad 100644 Binary files a/website/src/data/showcase/pearl-ui.png and b/website/src/data/showcase/pearl-ui.png differ diff --git a/website/src/data/showcase/pipeline-ui.png b/website/src/data/showcase/pipeline-ui.png index 01039d932a..68c4401973 100644 Binary files a/website/src/data/showcase/pipeline-ui.png and b/website/src/data/showcase/pipeline-ui.png differ diff --git a/website/src/data/showcase/plausible.png b/website/src/data/showcase/plausible.png index 255a204723..02d2102049 100644 Binary files a/website/src/data/showcase/plausible.png and b/website/src/data/showcase/plausible.png differ diff --git a/website/src/data/showcase/pnpm.png b/website/src/data/showcase/pnpm.png index 4a7cacf891..4d19caba5e 100644 Binary files a/website/src/data/showcase/pnpm.png and b/website/src/data/showcase/pnpm.png differ diff --git a/website/src/data/showcase/postgres-ai.png b/website/src/data/showcase/postgres-ai.png index a1ab18519b..b782caab22 100644 Binary files a/website/src/data/showcase/postgres-ai.png and b/website/src/data/showcase/postgres-ai.png differ diff --git a/website/src/data/showcase/power.png b/website/src/data/showcase/power.png index e6dcc69339..adc36c5872 100644 Binary files a/website/src/data/showcase/power.png and b/website/src/data/showcase/power.png differ diff --git a/website/src/data/showcase/pptxgenjs.png b/website/src/data/showcase/pptxgenjs.png index 3f9e4b2d99..af998d6abb 100644 Binary files a/website/src/data/showcase/pptxgenjs.png and b/website/src/data/showcase/pptxgenjs.png differ diff --git a/website/src/data/showcase/prefs.png b/website/src/data/showcase/prefs.png index 7bd0f4c1c6..e55db9818c 100644 Binary files a/website/src/data/showcase/prefs.png and b/website/src/data/showcase/prefs.png differ diff --git a/website/src/data/showcase/prismatic.png b/website/src/data/showcase/prismatic.png index 4ffed2bfac..df575e675b 100644 Binary files a/website/src/data/showcase/prismatic.png and b/website/src/data/showcase/prismatic.png differ diff --git a/website/src/data/showcase/profilo.png b/website/src/data/showcase/profilo.png index bac26c15bd..6256ee1d00 100644 Binary files a/website/src/data/showcase/profilo.png and b/website/src/data/showcase/profilo.png differ diff --git a/website/src/data/showcase/pyre.png b/website/src/data/showcase/pyre.png index f1a887adfe..f8418d5b2c 100644 Binary files a/website/src/data/showcase/pyre.png and b/website/src/data/showcase/pyre.png differ diff --git a/website/src/data/showcase/qa-board.png b/website/src/data/showcase/qa-board.png index 7b4e9cb580..3f9f09e682 100644 Binary files a/website/src/data/showcase/qa-board.png and b/website/src/data/showcase/qa-board.png differ diff --git a/website/src/data/showcase/quantcdn.png b/website/src/data/showcase/quantcdn.png index 0c3eb3696a..a8e104218d 100644 Binary files a/website/src/data/showcase/quantcdn.png and b/website/src/data/showcase/quantcdn.png differ diff --git a/website/src/data/showcase/questdb.png b/website/src/data/showcase/questdb.png index 647db00a60..eb9babfaa4 100644 Binary files a/website/src/data/showcase/questdb.png and b/website/src/data/showcase/questdb.png differ diff --git a/website/src/data/showcase/quickwit.png b/website/src/data/showcase/quickwit.png index 1a2f6a3cfd..c2432affb7 100644 Binary files a/website/src/data/showcase/quickwit.png and b/website/src/data/showcase/quickwit.png differ diff --git a/website/src/data/showcase/ractive-player.png b/website/src/data/showcase/ractive-player.png index e404ca2b82..54e37c13a3 100644 Binary files a/website/src/data/showcase/ractive-player.png and b/website/src/data/showcase/ractive-player.png differ diff --git a/website/src/data/showcase/react-complex-tree.png b/website/src/data/showcase/react-complex-tree.png index f85a5a2f4c..7e5750cc57 100644 Binary files a/website/src/data/showcase/react-complex-tree.png and b/website/src/data/showcase/react-complex-tree.png differ diff --git a/website/src/data/showcase/react-leaflet.png b/website/src/data/showcase/react-leaflet.png index 503948fc82..6ea39f2a2a 100644 Binary files a/website/src/data/showcase/react-leaflet.png and b/website/src/data/showcase/react-leaflet.png differ diff --git a/website/src/data/showcase/react-native-elements.png b/website/src/data/showcase/react-native-elements.png index 9ba2342499..9f14bbb58b 100644 Binary files a/website/src/data/showcase/react-native-elements.png and b/website/src/data/showcase/react-native-elements.png differ diff --git a/website/src/data/showcase/react-native-ios-kit.png b/website/src/data/showcase/react-native-ios-kit.png index 932cb56aac..6c306ae206 100644 Binary files a/website/src/data/showcase/react-native-ios-kit.png and b/website/src/data/showcase/react-native-ios-kit.png differ diff --git a/website/src/data/showcase/react-native-reanimated.png b/website/src/data/showcase/react-native-reanimated.png index 6c1c2d9f21..c090953f18 100644 Binary files a/website/src/data/showcase/react-native-reanimated.png and b/website/src/data/showcase/react-native-reanimated.png differ diff --git a/website/src/data/showcase/react-native-testing-library.png b/website/src/data/showcase/react-native-testing-library.png index 7d68c04734..e069eea442 100644 Binary files a/website/src/data/showcase/react-native-testing-library.png and b/website/src/data/showcase/react-native-testing-library.png differ diff --git a/website/src/data/showcase/react-navigation.png b/website/src/data/showcase/react-navigation.png index ae63d40cac..e2a5b84d14 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/react-redux.png b/website/src/data/showcase/react-redux.png index e4238e6d5e..661b1b45c0 100644 Binary files a/website/src/data/showcase/react-redux.png and b/website/src/data/showcase/react-redux.png differ diff --git a/website/src/data/showcase/reactnative-aria.png b/website/src/data/showcase/reactnative-aria.png index 15ffea583e..954b94a342 100644 Binary files a/website/src/data/showcase/reactnative-aria.png and b/website/src/data/showcase/reactnative-aria.png differ diff --git a/website/src/data/showcase/reactnative.png b/website/src/data/showcase/reactnative.png index e0aae00e64..e4ddcc0742 100644 Binary files a/website/src/data/showcase/reactnative.png and b/website/src/data/showcase/reactnative.png differ diff --git a/website/src/data/showcase/reactnativeboilerplate.png b/website/src/data/showcase/reactnativeboilerplate.png index 0fa4cdbf84..6513e67841 100644 Binary files a/website/src/data/showcase/reactnativeboilerplate.png and b/website/src/data/showcase/reactnativeboilerplate.png differ diff --git a/website/src/data/showcase/realtime-apps-workshop.png b/website/src/data/showcase/realtime-apps-workshop.png index e9eff9420d..4326dbe568 100644 Binary files a/website/src/data/showcase/realtime-apps-workshop.png and b/website/src/data/showcase/realtime-apps-workshop.png differ diff --git a/website/src/data/showcase/redis-developer.png b/website/src/data/showcase/redis-developer.png index a7efa4a879..8c702126ec 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/redux.png b/website/src/data/showcase/redux.png index 1497e6cd86..c851a9f3d2 100644 Binary files a/website/src/data/showcase/redux.png and b/website/src/data/showcase/redux.png differ diff --git a/website/src/data/showcase/relay.png b/website/src/data/showcase/relay.png index 8883fd41a7..2460c10052 100644 Binary files a/website/src/data/showcase/relay.png and b/website/src/data/showcase/relay.png differ diff --git a/website/src/data/showcase/rematch.png b/website/src/data/showcase/rematch.png index 9bc0ea07c2..0bcab9c03f 100644 Binary files a/website/src/data/showcase/rematch.png and b/website/src/data/showcase/rematch.png differ diff --git a/website/src/data/showcase/remirror.png b/website/src/data/showcase/remirror.png index ede6fe0204..d9fda2dd9e 100644 Binary files a/website/src/data/showcase/remirror.png and b/website/src/data/showcase/remirror.png differ diff --git a/website/src/data/showcase/remotion.png b/website/src/data/showcase/remotion.png index 9287c741f5..21d69013eb 100644 Binary files a/website/src/data/showcase/remotion.png and b/website/src/data/showcase/remotion.png differ diff --git a/website/src/data/showcase/repeaterjs.png b/website/src/data/showcase/repeaterjs.png index b5044bd6f2..6b27a7b81b 100644 Binary files a/website/src/data/showcase/repeaterjs.png and b/website/src/data/showcase/repeaterjs.png differ diff --git a/website/src/data/showcase/rnrh.png b/website/src/data/showcase/rnrh.png index e8ac9213aa..576b15410e 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/rooks.png b/website/src/data/showcase/rooks.png index 0e2b84a2eb..2bf13e42b6 100644 Binary files a/website/src/data/showcase/rooks.png and b/website/src/data/showcase/rooks.png differ diff --git a/website/src/data/showcase/rsocket.png b/website/src/data/showcase/rsocket.png index b598e8881b..5d4fc965af 100644 Binary files a/website/src/data/showcase/rsocket.png and b/website/src/data/showcase/rsocket.png differ diff --git a/website/src/data/showcase/runiac.png b/website/src/data/showcase/runiac.png index 8cac4786c0..bc364ccea0 100644 Binary files a/website/src/data/showcase/runiac.png and b/website/src/data/showcase/runiac.png differ diff --git a/website/src/data/showcase/runlet.png b/website/src/data/showcase/runlet.png index 3dc6cef19f..b5e18a71f4 100644 Binary files a/website/src/data/showcase/runlet.png and b/website/src/data/showcase/runlet.png differ diff --git a/website/src/data/showcase/saleor.png b/website/src/data/showcase/saleor.png index 5c871d9e94..982f9fe4f6 100644 Binary files a/website/src/data/showcase/saleor.png and b/website/src/data/showcase/saleor.png differ diff --git a/website/src/data/showcase/sapphire.png b/website/src/data/showcase/sapphire.png index adec7d7509..5b1930d41e 100644 Binary files a/website/src/data/showcase/sapphire.png and b/website/src/data/showcase/sapphire.png differ diff --git a/website/src/data/showcase/sciwp.png b/website/src/data/showcase/sciwp.png index 4d0752f86b..78137b29b4 100644 Binary files a/website/src/data/showcase/sciwp.png and b/website/src/data/showcase/sciwp.png differ diff --git a/website/src/data/showcase/shabados.png b/website/src/data/showcase/shabados.png index acecaaead4..27d4074ce0 100644 Binary files a/website/src/data/showcase/shabados.png and b/website/src/data/showcase/shabados.png differ diff --git a/website/src/data/showcase/shotstack.png b/website/src/data/showcase/shotstack.png index f6f3536f78..1aacc5efe5 100644 Binary files a/website/src/data/showcase/shotstack.png and b/website/src/data/showcase/shotstack.png differ diff --git a/website/src/data/showcase/sicope-model.png b/website/src/data/showcase/sicope-model.png index 9547518ec3..c3b7fe6331 100644 Binary files a/website/src/data/showcase/sicope-model.png and b/website/src/data/showcase/sicope-model.png differ diff --git a/website/src/data/showcase/signoz.png b/website/src/data/showcase/signoz.png index 57d546b4a2..47970b9277 100644 Binary files a/website/src/data/showcase/signoz.png and b/website/src/data/showcase/signoz.png differ diff --git a/website/src/data/showcase/single-spa.png b/website/src/data/showcase/single-spa.png index 8299c4b067..19918c5721 100644 Binary files a/website/src/data/showcase/single-spa.png and b/website/src/data/showcase/single-spa.png differ diff --git a/website/src/data/showcase/smart-docs.png b/website/src/data/showcase/smart-docs.png index 5f0833d55b..a8672f0826 100644 Binary files a/website/src/data/showcase/smart-docs.png and b/website/src/data/showcase/smart-docs.png differ diff --git a/website/src/data/showcase/smashgg.png b/website/src/data/showcase/smashgg.png index 2ed12ba705..9b34191146 100644 Binary files a/website/src/data/showcase/smashgg.png and b/website/src/data/showcase/smashgg.png differ diff --git a/website/src/data/showcase/social-embed.png b/website/src/data/showcase/social-embed.png index daaf0a22b3..2ba88adf85 100644 Binary files a/website/src/data/showcase/social-embed.png and b/website/src/data/showcase/social-embed.png differ diff --git a/website/src/data/showcase/spotifyapi-net.png b/website/src/data/showcase/spotifyapi-net.png index 14fb28ec17..ee87aa2a4c 100644 Binary files a/website/src/data/showcase/spotifyapi-net.png and b/website/src/data/showcase/spotifyapi-net.png differ diff --git a/website/src/data/showcase/sqlframes_docusaurus.png b/website/src/data/showcase/sqlframes_docusaurus.png index d7ead87c17..9b296168d5 100644 Binary files a/website/src/data/showcase/sqlframes_docusaurus.png and b/website/src/data/showcase/sqlframes_docusaurus.png differ diff --git a/website/src/data/showcase/stryker-mutator.png b/website/src/data/showcase/stryker-mutator.png index 0d7f35ece5..38e38fb314 100644 Binary files a/website/src/data/showcase/stryker-mutator.png and b/website/src/data/showcase/stryker-mutator.png differ diff --git a/website/src/data/showcase/stylable.png b/website/src/data/showcase/stylable.png index 593ddfbb2f..156c4fdca7 100644 Binary files a/website/src/data/showcase/stylable.png and b/website/src/data/showcase/stylable.png differ diff --git a/website/src/data/showcase/supabase.png b/website/src/data/showcase/supabase.png index 5d17e950a8..7ab30f7dad 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/t-regx.png b/website/src/data/showcase/t-regx.png index e2d6b53fef..61a5d2e846 100644 Binary files a/website/src/data/showcase/t-regx.png and b/website/src/data/showcase/t-regx.png differ diff --git a/website/src/data/showcase/talentbrick.png b/website/src/data/showcase/talentbrick.png index 1c41203922..fd200e335a 100644 Binary files a/website/src/data/showcase/talentbrick.png and b/website/src/data/showcase/talentbrick.png differ diff --git a/website/src/data/showcase/tasit.png b/website/src/data/showcase/tasit.png index 410275516e..ce2311c010 100644 Binary files a/website/src/data/showcase/tasit.png and b/website/src/data/showcase/tasit.png differ diff --git a/website/src/data/showcase/testing-library.png b/website/src/data/showcase/testing-library.png index 0d9ae64803..1b3f037154 100644 Binary files a/website/src/data/showcase/testing-library.png and b/website/src/data/showcase/testing-library.png differ diff --git a/website/src/data/showcase/the-diff.png b/website/src/data/showcase/the-diff.png index 45c107f3e2..9a98b15615 100644 Binary files a/website/src/data/showcase/the-diff.png and b/website/src/data/showcase/the-diff.png differ diff --git a/website/src/data/showcase/tinaeldevresse.png b/website/src/data/showcase/tinaeldevresse.png index 5a5fbc4bb3..5c601c7477 100644 Binary files a/website/src/data/showcase/tinaeldevresse.png and b/website/src/data/showcase/tinaeldevresse.png differ diff --git a/website/src/data/showcase/tooljet.png b/website/src/data/showcase/tooljet.png index ebf69d5150..fd3b7277c6 100644 Binary files a/website/src/data/showcase/tooljet.png and b/website/src/data/showcase/tooljet.png differ diff --git a/website/src/data/showcase/tourmaline.png b/website/src/data/showcase/tourmaline.png index 5af0e19c92..b5314103da 100644 Binary files a/website/src/data/showcase/tourmaline.png and b/website/src/data/showcase/tourmaline.png differ diff --git a/website/src/data/showcase/tremor.png b/website/src/data/showcase/tremor.png index a4c620d16e..032168693b 100644 Binary files a/website/src/data/showcase/tremor.png and b/website/src/data/showcase/tremor.png differ diff --git a/website/src/data/showcase/trpgengine.png b/website/src/data/showcase/trpgengine.png index 615c1971ed..88bcac47ea 100644 Binary files a/website/src/data/showcase/trpgengine.png and b/website/src/data/showcase/trpgengine.png differ diff --git a/website/src/data/showcase/tuist.png b/website/src/data/showcase/tuist.png index 8f20ec07ef..b2b1f2ec56 100644 Binary files a/website/src/data/showcase/tuist.png and b/website/src/data/showcase/tuist.png differ diff --git a/website/src/data/showcase/uniforms.png b/website/src/data/showcase/uniforms.png index ffb87e2d38..a993ba9aa0 100644 Binary files a/website/src/data/showcase/uniforms.png and b/website/src/data/showcase/uniforms.png differ diff --git a/website/src/data/showcase/unleash.png b/website/src/data/showcase/unleash.png index 25833bb3eb..dbdf21c445 100644 Binary files a/website/src/data/showcase/unleash.png and b/website/src/data/showcase/unleash.png differ diff --git a/website/src/data/showcase/unmand.png b/website/src/data/showcase/unmand.png index 6860ebc9ca..5790626b83 100644 Binary files a/website/src/data/showcase/unmand.png and b/website/src/data/showcase/unmand.png differ diff --git a/website/src/data/showcase/verdaccio.png b/website/src/data/showcase/verdaccio.png index f9d1061faa..bc9bdfdf8e 100644 Binary files a/website/src/data/showcase/verdaccio.png and b/website/src/data/showcase/verdaccio.png differ diff --git a/website/src/data/showcase/vue-nodegui.png b/website/src/data/showcase/vue-nodegui.png index bcc3ae0d1c..bd10c63fee 100644 Binary files a/website/src/data/showcase/vue-nodegui.png and b/website/src/data/showcase/vue-nodegui.png differ diff --git a/website/src/data/showcase/warrant.png b/website/src/data/showcase/warrant.png index f8e16f2946..dcee123538 100644 Binary files a/website/src/data/showcase/warrant.png and b/website/src/data/showcase/warrant.png differ diff --git a/website/src/data/showcase/wasp.png b/website/src/data/showcase/wasp.png index 3a145ea30a..614edf7410 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/webdriverio.png b/website/src/data/showcase/webdriverio.png index 67edf25d21..146c26621f 100644 Binary files a/website/src/data/showcase/webdriverio.png and b/website/src/data/showcase/webdriverio.png differ diff --git a/website/src/data/showcase/webiny.png b/website/src/data/showcase/webiny.png index 30407fcbe0..a4e29c299f 100644 Binary files a/website/src/data/showcase/webiny.png and b/website/src/data/showcase/webiny.png differ diff --git a/website/src/data/showcase/whirlcodes.png b/website/src/data/showcase/whirlcodes.png index dd09a3bb2f..07e657a02a 100644 Binary files a/website/src/data/showcase/whirlcodes.png and b/website/src/data/showcase/whirlcodes.png differ diff --git a/website/src/data/showcase/wisdom.png b/website/src/data/showcase/wisdom.png index 9c21fb0fae..8f6a4d4d3e 100644 Binary files a/website/src/data/showcase/wisdom.png and b/website/src/data/showcase/wisdom.png differ diff --git a/website/src/data/showcase/woodpecker.png b/website/src/data/showcase/woodpecker.png index 5d140cbf5a..0e4871fce2 100644 Binary files a/website/src/data/showcase/woodpecker.png and b/website/src/data/showcase/woodpecker.png differ diff --git a/website/src/data/showcase/zowe.png b/website/src/data/showcase/zowe.png index cf0ce1f9a7..f659aa3edd 100644 Binary files a/website/src/data/showcase/zowe.png and b/website/src/data/showcase/zowe.png differ diff --git a/website/src/data/showcase/zxuqian.png b/website/src/data/showcase/zxuqian.png index 29b1c8ff68..63e063b2c9 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 c6f59830dd..bbda29b6e3 100644 --- a/website/src/data/users.tsx +++ b/website/src/data/users.tsx @@ -22,6 +22,7 @@ import {sortBy} from '@site/src/utils/jsUtils'; * - Add a local image preview (decent screenshot of your Docusaurus site) * - Use relevant tags to qualify your site (read the tag descriptions below) * - The image MUST be added to the GitHub repository, and use `require("image")` + * - The image has to have minimum width 640 and an aspect of no wider than 2:1 * - Open a PR and check for reported CI errors * * Example PR: https://github.com/facebook/docusaurus/pull/3976 @@ -785,7 +786,7 @@ const Users: User[] = [ { title: 'Kotest', description: 'Kotlin test framework', - preview: require('./showcase/kotest.jpg'), + preview: require('./showcase/kotest.png'), website: 'https://kotest.io', source: 'https://github.com/kotest/kotest', tags: ['opensource'],