diff --git a/.github/workflows/website-integrity.yml b/.github/workflows/website-integrity.yml index 908922253fb6..9b2b5bea0619 100644 --- a/.github/workflows/website-integrity.yml +++ b/.github/workflows/website-integrity.yml @@ -23,14 +23,8 @@ jobs: - name: Set up env uses: the-guild-org/shared-config/setup@v1 - - name: Fetch remote docs - run: cd website && pnpm fetch-remote-docs - - - name: Fetch API reference - run: cd website && pnpm fetch-api-reference - - - name: Fix pages structure - run: cd website && pnpm fix-pages-structure + - name: Run pre-build scripts + run: pnpm prebuild:ci - name: Build run: pnpm build diff --git a/Dockerfile b/Dockerfile index c657bb3612b4..e05fac2a3a5d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,9 +18,7 @@ WORKDIR /app COPY . ./ RUN pnpm install --frozen-lockfile -RUN cd website && pnpm fetch-remote-docs -RUN cd website && pnpm fetch-api-reference -RUN cd website && pnpm fix-pages-structure +RUN pnpm prebuild:ci RUN pnpm build FROM nginx:1.16.0-alpine diff --git a/package.json b/package.json index 00908f834835..42e8bdef6236 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "scripts": { "dev": "turbo run dev", "build": "NODE_OPTIONS='--max_old_space_size=8192' turbo run build", + "prebuild:ci": "turbo run prebuild:ci", "check": "pnpm typecheck && pnpm lint && pnpm prettier:check", "check:fix": "pnpm lint:fix; pnpm prettier", "lint": "eslint . --ignore-path .gitignore --max-warnings 0", diff --git a/packages/og-image/package.json b/packages/og-image/package.json index ec7ff036e8d9..ea372ed7e5a0 100644 --- a/packages/og-image/package.json +++ b/packages/og-image/package.json @@ -16,7 +16,7 @@ "yoga-wasm-web": "^0.3.3" }, "devDependencies": { - "@cloudflare/workers-types": "^4.20250430.0", + "@cloudflare/workers-types": "^4.20250502.0", "@types/react": "^18.3.20", "jest-image-snapshot": "^6.4.0", "tsx": "^4.19.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d7d0674b5d18..3109a1fa0ab3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -67,8 +67,8 @@ importers: version: 0.3.3 devDependencies: '@cloudflare/workers-types': - specifier: ^4.20250430.0 - version: 4.20250430.0 + specifier: ^4.20250502.0 + version: 4.20250502.0 '@types/react': specifier: ^18.3.20 version: 18.3.20 @@ -86,7 +86,7 @@ importers: version: 2.1.9(@types/node@22.15.3)(jsdom@24.1.3) wrangler: specifier: ^3.114.8 - version: 3.114.8(@cloudflare/workers-types@4.20250430.0) + version: 3.114.8(@cloudflare/workers-types@4.20250502.0) packages/rehype-unwrap-images: dependencies: @@ -130,8 +130,8 @@ importers: specifier: ^6.5.14 version: 6.5.14(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.20))(@types/react@18.3.20)(dayjs@1.11.13)(hardhat@2.14.1(typescript@5.8.3))(next@14.2.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1))(react@18.3.1))(typescript@5.8.3) '@edgeandnode/go': - specifier: ^9.4.14 - version: 9.4.14(4c0e2a82a7be43483b9a72278c7d451e) + specifier: ^10.0.2 + version: 10.0.2(bff3751af905338b0dae382088ea3bb2) '@emotion/react': specifier: ^11.14.0 version: 11.14.0(@types/react@18.3.20)(react@18.3.1) @@ -478,8 +478,8 @@ packages: cpu: [x64] os: [win32] - '@cloudflare/workers-types@4.20250430.0': - resolution: {integrity: sha512-JWAX7ZhQ7KjkdJwASgG58MZ/pQ15brlnZ9/0YBwDQ0hrJ/LaK392aTRFlj2r/PRKDZ5dOuujRywNYaNpfeFiEA==} + '@cloudflare/workers-types@4.20250502.0': + resolution: {integrity: sha512-bUvF+vTpCpbB05orD+P04IpfBVWg7IjGVPfeH848coip9+MqVRMEqE65BaoxxswkDw1L/Tl13gLvpLz74FudWg==} '@corex/deepmerge@4.0.43': resolution: {integrity: sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==} @@ -566,12 +566,12 @@ packages: next: optional: true - '@edgeandnode/go@9.4.14': - resolution: {integrity: sha512-ZiKE3KC2GdyJaL4UOiF3O+uM6UM2QL4nDbG38vWFBvd2Ni0+p6TuiazhqhOn3fd/vh7WpmU8q1vI4zSHzAh4+w==} + '@edgeandnode/go@10.0.2': + resolution: {integrity: sha512-pTEzMxNjonzNdfykiNlGCYAdHUDruIhnyyyG+OrDSierPZnuIz2ucraBtxq5/f0LL/qldOubKfWt8WFQJ/ujVQ==} peerDependencies: '@edgeandnode/common': ^7.0.4 - '@edgeandnode/ens': ^2.1.4 - '@edgeandnode/gds': ^6.5.12 + '@edgeandnode/ens': ^2.1.5 + '@edgeandnode/gds': ^6.5.14 '@emotion/react': ^11 '@tanstack/react-query': ^5 graphql: '>=16.9' @@ -4049,8 +4049,8 @@ packages: browserify-aes@1.2.0: resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - browserslist@4.24.4: - resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + browserslist@4.24.5: + resolution: {integrity: sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -9182,7 +9182,7 @@ snapshots: '@cloudflare/workerd-windows-64@1.20250408.0': optional: true - '@cloudflare/workers-types@4.20250430.0': {} + '@cloudflare/workers-types@4.20250502.0': {} '@corex/deepmerge@4.0.43': {} @@ -9355,7 +9355,7 @@ snapshots: - typescript - utf-8-validate - '@edgeandnode/go@9.4.14(4c0e2a82a7be43483b9a72278c7d451e)': + '@edgeandnode/go@10.0.2(bff3751af905338b0dae382088ea3bb2)': dependencies: '@edgeandnode/common': 7.0.4(hardhat@2.14.1(typescript@5.8.3)) '@edgeandnode/ens': 2.1.5(typescript@5.8.3)(viem@2.28.3(typescript@5.8.3)(zod@3.24.3)) @@ -9369,6 +9369,7 @@ snapshots: '@react-aria/utils': 3.28.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tanstack/react-query': 5.75.1(react@18.3.1) '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.20)(react@18.3.1)) + '@web3icons/react': 4.0.13(react@18.3.1)(typescript@5.8.3) escape-string-regexp: 5.0.0 graphql: 16.8.0 graphql-request: 7.1.2(graphql@16.8.0) @@ -9384,6 +9385,7 @@ snapshots: - '@types/react' - '@types/react-dom' - ts-node + - typescript '@emnapi/core@1.4.3': dependencies: @@ -13651,7 +13653,7 @@ snapshots: autoprefixer@10.4.21(postcss@8.5.3): dependencies: - browserslist: 4.24.4 + browserslist: 4.24.5 caniuse-lite: 1.0.30001716 fraction.js: 4.3.7 normalize-range: 0.1.2 @@ -13802,12 +13804,12 @@ snapshots: inherits: 2.0.4 safe-buffer: 5.2.1 - browserslist@4.24.4: + browserslist@4.24.5: dependencies: caniuse-lite: 1.0.30001716 electron-to-chromium: 1.5.149 node-releases: 2.0.19 - update-browserslist-db: 1.1.3(browserslist@4.24.4) + update-browserslist-db: 1.1.3(browserslist@4.24.5) bs58@4.0.1: dependencies: @@ -19469,9 +19471,9 @@ snapshots: '@unrs/resolver-binding-win32-ia32-msvc': 1.7.2 '@unrs/resolver-binding-win32-x64-msvc': 1.7.2 - update-browserslist-db@1.1.3(browserslist@4.24.4): + update-browserslist-db@1.1.3(browserslist@4.24.5): dependencies: - browserslist: 4.24.4 + browserslist: 4.24.5 escalade: 3.2.0 picocolors: 1.1.1 @@ -19803,7 +19805,7 @@ snapshots: workerpool@6.5.1: {} - wrangler@3.114.8(@cloudflare/workers-types@4.20250430.0): + wrangler@3.114.8(@cloudflare/workers-types@4.20250502.0): dependencies: '@cloudflare/kv-asset-handler': 0.3.4 '@cloudflare/unenv-preset': 2.0.2(unenv@2.0.0-rc.14)(workerd@1.20250408.0) @@ -19816,7 +19818,7 @@ snapshots: unenv: 2.0.0-rc.14 workerd: 1.20250408.0 optionalDependencies: - '@cloudflare/workers-types': 4.20250430.0 + '@cloudflare/workers-types': 4.20250502.0 fsevents: 2.3.3 sharp: 0.33.5 transitivePeerDependencies: diff --git a/turbo.json b/turbo.json index ab816e313d16..7cdd91048f0d 100644 --- a/turbo.json +++ b/turbo.json @@ -10,6 +10,9 @@ "outputs": ["dist/**"], "dependsOn": ["^build"] }, + "prebuild:ci": { + "cache": false + }, "typecheck": { "dependsOn": ["^build"] }, diff --git a/website/package.json b/website/package.json index 9607195c5710..ebd7855eed13 100644 --- a/website/package.json +++ b/website/package.json @@ -8,6 +8,7 @@ "predev": "tsup ./src/i18n.ts --format esm", "build": "rm -rf .next && rm -rf out && next build", "prebuild": "pnpm predev", + "prebuild:ci": "pnpm fetch-remote-docs && pnpm fetch-api-reference && pnpm fix-pages-structure", "postbuild": "next-sitemap --config next-sitemap.config.mjs && node scripts/sitemap-ci.js", "typecheck": "tsc", "fetch-remote-docs": "tsx scripts/fetch-remote-docs.ts", @@ -19,7 +20,7 @@ "@docsearch/react": "^3.9.0", "@edgeandnode/common": "^7.0.4", "@edgeandnode/gds": "^6.5.14", - "@edgeandnode/go": "^9.4.14", + "@edgeandnode/go": "^10.0.2", "@emotion/react": "^11.14.0", "@graphprotocol/contracts": "6.2.1", "@pinax/graph-networks-registry": "^0.6.7", diff --git a/website/src/HomePage.tsx b/website/src/HomePage.tsx index 96a7b8e9f4e1..f00d53b95975 100644 --- a/website/src/HomePage.tsx +++ b/website/src/HomePage.tsx @@ -1,10 +1,7 @@ import { NetworkType } from '@pinax/graph-networks-registry' -import { useData } from 'nextra/hooks' -import type { ComponentPropsWithoutRef } from 'react' -import { classNames, ExperimentalLink, Tooltip } from '@edgeandnode/gds' +import { ButtonOrLink, ExperimentalLink, Tooltip } from '@edgeandnode/gds' import { - Clock, Firehose, GraphExplorer, GraphNode, @@ -17,9 +14,9 @@ import { NetworkIcon } from '@edgeandnode/go' import { Card, Heading, TimeIcon } from '@/components' import { useI18n } from '@/i18n' -import { getSupportedNetworks } from '@/supportedNetworks' +import { type SupportedNetwork } from '@/supportedNetworks' -export default function HomePage() { +export default function HomePage({ supportedNetworks }: { supportedNetworks: SupportedNetwork[] }) { const { t } = useI18n() return ( @@ -141,7 +138,38 @@ export default function HomePage() { , ])}
-
+ {t('index.supportedNetworks.infoText')}{' '}
+
{t('index.supportedNetworks.emptySearch.title')}
++ {t('index.supportedNetworks.emptySearch.description', [searchQuery])} +
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
---|---|---|---|---|---|
+ |
+
+
+ {network.id}
+
+
+
+ |
+ {network.subgraphs ? |
+ {network.substreams ? |
+ {network.firehose ? |
+ {network.tokenApi ? |
+
{t('index.supportedNetworks.emptySearch.title')}
-- {t('index.supportedNetworks.emptySearch.description', [searchQuery])} -
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
---|
- {t('index.supportedNetworks.infoText')}{' '}
-