justinschuldt c2023b1429 Explorer: handle GCP redirect to index.html 4 years ago
..
.storybook 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.vscode 576ff0cabf Explorer web app redesign. 4 years ago
__mocks__ 0e602ed91d Add explorer web app and web proto codegen 4 years ago
src c2023b1429 Explorer: handle GCP redirect to index.html 3 years ago
static 576ff0cabf Explorer web app redesign. 4 years ago
test-utils 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.babelrc 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.dockerignore cf36c9bfe0 explorer: lookup BigTable data 4 years ago
.editorconfig 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.env.sample aff990487d explorer: transaction hashes & links to explorers 4 years ago
.eslintignore 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.eslintrc.js 576ff0cabf Explorer web app redesign. 4 years ago
.gitignore 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.npmrc aae5d7450f explorer: format date to ISO 4 years ago
.prettierignore 0e602ed91d Add explorer web app and web proto codegen 4 years ago
.prettierrc 576ff0cabf Explorer web app redesign. 4 years ago
.svgo.yml 0e602ed91d Add explorer web app and web proto codegen 4 years ago
Dockerfile b0ed42681d Use stable Buildkit syntax 3 years ago
README.md cf36c9bfe0 explorer: lookup BigTable data 4 years ago
gatsby-browser.js 0e602ed91d Add explorer web app and web proto codegen 4 years ago
gatsby-config.js cf36c9bfe0 explorer: lookup BigTable data 4 years ago
gatsby-node.js e5045f1c8c devnet Explorer 4 years ago
gatsby-ssr.js 0e602ed91d Add explorer web app and web proto codegen 4 years ago
jest.config.js 0e602ed91d Add explorer web app and web proto codegen 4 years ago
jsconfig.json 0e602ed91d Add explorer web app and web proto codegen 4 years ago
package-lock.json 14ba777cc1 explorer: "Launch Bridge" link 4 years ago
package.json 14ba777cc1 explorer: "Launch Bridge" link 4 years ago
tsconfig.json e5045f1c8c devnet Explorer 4 years ago

README.md

wormhole explorer

A web app built with:

Notable files

Repo setup

Installing dependencies with npm:

npm install

Create a .env file for your development environment, from the .env.sample:

cp .env.sample .env.development

Developing

Start the development server with the npm script:

npm run dev

Then open the web app in your browser at http://localhost:8000

Debugging

NodeJs debugging with VSCode

You can debug the Gatsby dev server or build process using VSCode's debbuger. Checkout .vscode/launch.json to see the NodeJS debugging options.

These debugger configs will let you set breakpoints in the Gatsby node programs (./gatsby-config.js, ./gatsby-node.js) to debug webpack, Gatsby plugins, etc.

Browser debugging with VSCode

With the Debugger for Chrome extension installed, you can inspect the web app and set broswer breakpoints from VSCode. With the dev server (npm run dev) running, select & run Debug in Chrome from the debugger pane.

Storybook component rendering

Storybook can render components with sytles and locales, for UI component development.

Run Storybook with:

npm run storybook

See ./src/components/Button/button.stories.tsx

eslint linting & formatting

Check linting:

npm run lint

Fix linting errors:

npm run format

Ant Design Theming

Ant Design default less variables can be overridden in ./src/AntdTheme.js, which is used in ./gatsby-config.js#L51.

Programmatic Translations

Translations can be made for the supported languages (./src/utils/i18n/supportedLanguages.js). The English language definition file (./src/locales/en.json) will be read and used as the source, using either DeepL or Google Translate to supply the translations.

Translating with DeepL

Pass your DeepL Pro api key to the npm script:

npm run translate:deepl -- your-DeepL-Pro-api-key-here

Translating with Google Translate

With your Service Account credentials saved to a file locally, pass the path to the .json file to the npm script:

npm run translate:google -- ./your-GCP-service-account.json

Protobuf generation

You'll need to generate proto files by running:

npm run generate-protos

WASM generation

To generate WASM files run:

npm run generate-wasm