From b6b1965248607e69e94c27b9de719167b7689bb4 Mon Sep 17 00:00:00 2001 From: Jason Date: Wed, 23 Jul 2025 01:04:40 +0200 Subject: [PATCH 1/2] feat: add interactive HyperSync query builder component and documentation - Introduced the `hypersync-query-builder-component` to enhance query building capabilities. - Added `HyperSyncQueryBuilderWrapper` component for integration. - Created documentation for the interactive query builder, detailing its features and usage. - Updated `package.json`, `yarn.lock`, and CSS styles to support the new component. - Included new sidebar entry for easy navigation to the query builder documentation. --- docs/HyperSync/hypersync-query-creator.mdx | 121 ++++++++++++++++++ package.json | 1 + sidebarsHyperSync.js | 1 + .../HyperSyncQueryBuilderWrapper.jsx | 22 ++++ src/css/custom.css | 49 +++++-- supported-networks.json | 2 +- yarn.lock | 18 +++ 7 files changed, 200 insertions(+), 14 deletions(-) create mode 100644 docs/HyperSync/hypersync-query-creator.mdx create mode 100644 src/components/HyperSyncQueryBuilderWrapper.jsx diff --git a/docs/HyperSync/hypersync-query-creator.mdx b/docs/HyperSync/hypersync-query-creator.mdx new file mode 100644 index 00000000..1c156347 --- /dev/null +++ b/docs/HyperSync/hypersync-query-creator.mdx @@ -0,0 +1,121 @@ +--- +id: hypersync-query-creator +title: Interactive Query Builder +sidebar_label: 🧪 Interactive Query Builder +slug: /hypersync-query-creator +--- + +import HyperSyncQueryBuilderWrapper from '@site/src/components/HyperSyncQueryBuilderWrapper'; + +# Interactive HyperSync Query Builder + +Welcome to the interactive HyperSync query builder! This powerful tool allows you to build, visualize, and execute HyperSync queries directly in your browser. Whether you're new to HyperSync or an experienced user, this interactive interface makes it easy to construct complex blockchain queries with a user-friendly UI. + +## 🚀 Try It Now + + + +## What You Can Do + +With this interactive query builder, you can: + +### 🎯 **Build Queries Visually** +- **Multi-chain support**: Select from dozens of supported blockchain networks +- **Advanced filtering**: Configure filters for logs, transactions, and blocks +- **Field selection**: Choose exactly which data fields you want returned +- **Real-time validation**: Get immediate feedback on your query structure + +### 🔍 **Learn by Doing** +- **Interactive exploration**: Experiment with different query configurations +- **Instant JSON output**: See the generated query structure in real-time +- **cURL generation**: Get ready-to-use command-line examples +- **Live execution**: Run queries directly and see results immediately + +### 📊 **Query Types Supported** + +#### **Log Queries** +Filter blockchain event logs by: +- Contract addresses +- Event topics +- Block ranges +- And more... + +#### **Transaction Queries** +Filter transactions by: +- Sender/receiver addresses +- Function signatures +- Transaction status +- Contract interactions + +#### **Block Queries** +Query block data with: +- Block range specification +- Field selection +- Custom filtering options + +## 🛠 Getting Started Guide + +### 1. **Select Your Network** +Start by choosing the blockchain network you want to query from the dropdown menu. HyperSync supports major networks including Ethereum, Polygon, Arbitrum, Optimism, and many more. + +### 2. **Configure Your Query** +- **Set block range**: Define the `fromBlock` and optionally `toBlock` for your query +- **Add filters**: Use the interface to add log, transaction, or block filters +- **Select fields**: Choose which data fields you want in your response to optimize performance + +### 3. **Build and Execute** +- **Review JSON**: Check the generated query structure in the JSON output panel +- **Copy cURL**: Get a ready-to-use cURL command for your terminal +- **Execute directly**: Run the query and see results immediately + +### 4. **Optimize Your Query** +- **Use field selection**: Only request the data you need for better performance +- **Set appropriate limits**: Configure `maxNumBlocks`, `maxNumTransactions`, etc. +- **Choose join modes**: Understand how different join modes affect your results + +## 💡 Pro Tips + +:::tip Performance Optimization +- **Use field selection** to only request the data you need - this significantly improves query performance +- **Set reasonable block ranges** for initial testing, then expand as needed +- **Use specific contract addresses** in log filters rather than querying all contracts +::: + +:::tip Query Building Strategy +1. **Start simple**: Begin with a basic query and add complexity incrementally +2. **Test iteratively**: Execute small queries first to validate your approach +3. **Use the examples**: The generated cURL commands are perfect starting points for your applications +::: + +:::tip Understanding Results +- **Pagination**: Large result sets may be paginated - use the `nextBlock` field to continue querying +- **Join modes**: Different join modes change how logs, transactions, and blocks are related in results +- **Field availability**: Not all fields are available on every network - the UI will guide you +::: + +## 🔗 Next Steps + +After experimenting with the interactive builder: + +1. **Integrate with your app**: Use the generated queries in your application +2. **Explore client libraries**: Check out our [HyperSync clients](./hypersync-clients.md) for different programming languages +3. **Learn advanced techniques**: Visit our [advanced query guide](./hypersync-query.md) for complex use cases +4. **Get an API token**: [Sign up for an API token](./api-tokens.mdx) to use HyperSync in production + +## 📚 Learn More + +- **[HyperSync Overview](./overview.md)**: Understanding HyperSync's architecture and benefits +- **[Query Reference](./hypersync-query.md)**: Comprehensive guide to query structure and options +- **[Client Libraries](./hypersync-clients.md)**: Language-specific libraries for Node.js, Python, Rust, and Go +- **[cURL Examples](./hypersync-curl-examples.md)**: Ready-to-run command-line examples +- **[Usage Guide](./hypersync-usage.md)**: Detailed usage patterns and best practices + +## 🤝 Need Help? + +- **[Join our Discord](https://discord.gg/envio)**: Connect with the community and get support +- **[GitHub Issues](https://github.com/enviodev/hyperindex)**: Report bugs or request features +- **[Documentation](https://docs.envio.dev)**: Comprehensive guides and tutorials + +--- + +**Happy querying!** 🎉 This interactive tool is designed to make HyperSync accessible to everyone, from beginners exploring blockchain data to experienced developers building production applications. diff --git a/package.json b/package.json index 265814c4..c44ded23 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "clsx": "^1.2.1", "docusaurus": "^1.14.7", "docusaurus-json-schema-plugin": "^1.12.2", + "hypersync-query-builder-component": "0.2.1", "prism-react-renderer": "^2.1.0", "react": "^18.2.0", "react-dom": "^18.2.0" diff --git a/sidebarsHyperSync.js b/sidebarsHyperSync.js index f66a802b..8adc9053 100644 --- a/sidebarsHyperSync.js +++ b/sidebarsHyperSync.js @@ -2,6 +2,7 @@ module.exports = { someSidebar: [ "overview", "quickstart", + "hypersync-query-creator", "hypersync-usage", "hypersync-clients", "hypersync-query", diff --git a/src/components/HyperSyncQueryBuilderWrapper.jsx b/src/components/HyperSyncQueryBuilderWrapper.jsx new file mode 100644 index 00000000..250b61e5 --- /dev/null +++ b/src/components/HyperSyncQueryBuilderWrapper.jsx @@ -0,0 +1,22 @@ +import React from 'react'; +import { HyperSyncQueryBuilder } from 'hypersync-query-builder-component'; +import 'hypersync-query-builder-component/styles'; + +const HyperSyncQueryBuilderWrapper = () => { + return ( +
+ +
+ ); +}; + +export default HyperSyncQueryBuilderWrapper; diff --git a/src/css/custom.css b/src/css/custom.css index fd39c753..4c778d05 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -17,25 +17,48 @@ /* For readability concerns, you should choose a lighter palette in dark mode. */ [data-theme='dark'] { - --ifm-color-primary: #e3e3e3; - --ifm-color-primary-dark: #cccccc; - --ifm-color-primary-darker: #c1c1c1; - --ifm-color-primary-darkest: #9f9f9f; - --ifm-color-primary-light: #fafafa; - --ifm-color-primary-lighter: #ffffff; - --ifm-color-primary-lightest: #ffffff; - + --ifm-color-primary: #e3e3e3; + --ifm-color-primary-dark: #cccccc; + --ifm-color-primary-darker: #c1c1c1; + --ifm-color-primary-darkest: #9f9f9f; + --ifm-color-primary-light: #fafafa; + --ifm-color-primary-lighter: #ffffff; + --ifm-color-primary-lightest: #ffffff; - } - [data-theme='dark'] .hero { - color:white; } - + +[data-theme='dark'] .hero { + color: white; +} + article a { text-decoration: underline; } article a:hover { opacity: 60%; -} \ No newline at end of file +} + +/* HyperSync Query Builder Component Styles Fix */ +/* Ensure the component has proper scoping and doesn't interfere with Docusaurus */ +.hypersync-query-builder-wrapper * { + box-sizing: border-box; +} + +/* Fix potential Tailwind reset conflicts with Docusaurus */ +.hypersync-query-builder-wrapper button { + all: revert; +} + +.hypersync-query-builder-wrapper input, +.hypersync-query-builder-wrapper select, +.hypersync-query-builder-wrapper textarea { + all: revert; + margin: 0; +} + +/* Ensure proper spacing and styling for the component */ +.hypersync-query-builder-wrapper { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; +} diff --git a/supported-networks.json b/supported-networks.json index d29c4b9a..8964c100 100644 --- a/supported-networks.json +++ b/supported-networks.json @@ -2,4 +2,4 @@ "supported-networks/any-evm-with-rpc", "supported-networks/local-anvil", "supported-networks/local-hardhat", - "supported-networks/0g-newton-testnet","supported-networks/abstract","supported-networks/aleph-zero-evm","supported-networks/altlayer-op-demo-testnet","supported-networks/ancient8","supported-networks/arbitrum","supported-networks/arbitrum-blueberry","supported-networks/arbitrum-nova","supported-networks/arbitrum-sepolia","supported-networks/artela-testnet","supported-networks/arthera-mainnet","supported-networks/asset-chain-mainnet","supported-networks/astar-zkevm","supported-networks/astar-zkyoto","supported-networks/aurora","supported-networks/avalanche","supported-networks/b2-hub-testnet","supported-networks/b3","supported-networks/b3-sepolia-testnet","supported-networks/base","supported-networks/base-sepolia","supported-networks/beam","supported-networks/berachain","supported-networks/berachain-artio-testnet","supported-networks/berachain-bartio","supported-networks/bevm-mainnet","supported-networks/bevm-testnet","supported-networks/bitfinity-mainnet","supported-networks/bitfinity-testnet","supported-networks/bitgert-mainnet","supported-networks/bitlayer","supported-networks/blast","supported-networks/blast-sepolia","supported-networks/bob-mainnet","supported-networks/boba","supported-networks/boba-bnb-mainnet","supported-networks/botanix-testnet","supported-networks/bsc","supported-networks/bsc-testnet","supported-networks/canto","supported-networks/canto-testnet","supported-networks/celo","supported-networks/celo-alfajores-testnet","supported-networks/chiliz","supported-networks/chiliz-testnet-spicy","supported-networks/citrea-devnet","supported-networks/citrea-testnet","supported-networks/core","supported-networks/creator-testnet","supported-networks/cronos-zkevm","supported-networks/cronos-zkevm-testnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-testnet","supported-networks/curtis","supported-networks/cyber","supported-networks/degen-chain","supported-networks/dfk-chain","supported-networks/dogechain-mainnet","supported-networks/dogechain-testnet","supported-networks/dos-chain","supported-networks/energy-web","supported-networks/eos","supported-networks/eth","supported-networks/etherlink-testnet","supported-networks/exosama","supported-networks/fantom","supported-networks/fantom-testnet","supported-networks/flare","supported-networks/flare-songbird","supported-networks/flow","supported-networks/flow-testnet","supported-networks/fraxtal","supported-networks/fuel-mainnet","supported-networks/fuel-testnet","supported-networks/fuji","supported-networks/galadriel-devnet","supported-networks/gnosis","supported-networks/gnosis-chiado","supported-networks/gravity-alpha-mainnet","supported-networks/harmony-shard-0","supported-networks/heco-chain","supported-networks/holesky","supported-networks/hyperliquid","supported-networks/immutable-zkevm","supported-networks/immutable-zkevm-testnet","supported-networks/ink","supported-networks/iotex-network","supported-networks/japan-open-chain","supported-networks/kaia","supported-networks/kakarot-starknet-sepolia","supported-networks/kroma","supported-networks/layeredge-testnet","supported-networks/lightlink-pegasus-testnet","supported-networks/lightlink-phoenix","supported-networks/linea","supported-networks/lisk","supported-networks/lukso","supported-networks/lukso-testnet","supported-networks/manta","supported-networks/manta-pacific-sepolia","supported-networks/mantle","supported-networks/megaeth-testnet","supported-networks/merlin","supported-networks/metall2","supported-networks/meter-mainnet","supported-networks/meter-testnet","supported-networks/mev-commit","supported-networks/mint-mainnet","supported-networks/mode","supported-networks/monad-testnet","supported-networks/moonbase-alpha","supported-networks/moonbeam","supported-networks/morph","supported-networks/morph-holesky","supported-networks/nautilus","supported-networks/neo-x-testnet","supported-networks/nibiru-testnet","supported-networks/now-chaint","supported-networks/oasis-emerald","supported-networks/oasis-sapphire","supported-networks/onigiri-subnet","supported-networks/onigiri-test-subnet","supported-networks/ontology-mainnet","supported-networks/ontology-testnet","supported-networks/op-celestia-raspberry","supported-networks/opbnb","supported-networks/optimism","supported-networks/optimism-sepolia","supported-networks/optopia","supported-networks/peaq","supported-networks/pharos-devnet","supported-networks/polygon","supported-networks/polygon-amoy","supported-networks/polygon-zkevm","supported-networks/polygon-zkevm-cardona-testnet","supported-networks/public-goods-network","supported-networks/pulsechain","supported-networks/puppynet-shibarium","supported-networks/ronin","supported-networks/rootstock","supported-networks/saakuru","supported-networks/satoshivm","supported-networks/scroll","supported-networks/scroll-sepolia","supported-networks/sepolia","supported-networks/shibarium","supported-networks/shimmer-evm","supported-networks/skale-europa","supported-networks/soneium","supported-networks/sonic","supported-networks/sophon","supported-networks/sophon-testnet","supported-networks/stratovm-testnet","supported-networks/superseed","supported-networks/superseed-sepolia-testnet","supported-networks/swell","supported-networks/taiko","supported-networks/tanssi-demo","supported-networks/telos-evm-mainnet","supported-networks/telos-evm-testnet","supported-networks/torus-mainnet","supported-networks/torus-testnet","supported-networks/unichain","supported-networks/unichain-sepolia","supported-networks/unicorn-ultra-nebulas-testnet","supported-networks/velas-mainnet","supported-networks/viction","supported-networks/worldchain","supported-networks/x-layer-mainnet","supported-networks/x-layer-testnet","supported-networks/xdc","supported-networks/xdc-testnet","supported-networks/zeta","supported-networks/zeta-testnet","supported-networks/zircuit","supported-networks/zklink-nova-mainnet","supported-networks/zksync","supported-networks/zksync-sepolia-testnet","supported-networks/zora","supported-networks/zora-sepolia"]} \ No newline at end of file + "supported-networks/0g-newton-testnet","supported-networks/abstract","supported-networks/aleph-zero-evm","supported-networks/altlayer-op-demo-testnet","supported-networks/ancient8","supported-networks/arbitrum","supported-networks/arbitrum-blueberry","supported-networks/arbitrum-nova","supported-networks/arbitrum-sepolia","supported-networks/artela-testnet","supported-networks/arthera-mainnet","supported-networks/asset-chain-mainnet","supported-networks/astar-zkevm","supported-networks/astar-zkyoto","supported-networks/aurora","supported-networks/avalanche","supported-networks/b2-hub-testnet","supported-networks/b3","supported-networks/b3-sepolia-testnet","supported-networks/base","supported-networks/base-sepolia","supported-networks/beam","supported-networks/berachain","supported-networks/berachain-artio-testnet","supported-networks/berachain-bartio","supported-networks/bevm-mainnet","supported-networks/bevm-testnet","supported-networks/bitfinity-mainnet","supported-networks/bitfinity-testnet","supported-networks/bitgert-mainnet","supported-networks/bitlayer","supported-networks/blast","supported-networks/blast-sepolia","supported-networks/bob-mainnet","supported-networks/boba","supported-networks/boba-bnb-mainnet","supported-networks/botanix-testnet","supported-networks/bsc","supported-networks/bsc-testnet","supported-networks/canto","supported-networks/canto-testnet","supported-networks/celo","supported-networks/celo-alfajores-testnet","supported-networks/chainweb-testnet-20","supported-networks/chainweb-testnet-21","supported-networks/chiliz","supported-networks/chiliz-testnet-spicy","supported-networks/citrea-devnet","supported-networks/citrea-testnet","supported-networks/core","supported-networks/creator-testnet","supported-networks/cronos-zkevm","supported-networks/cronos-zkevm-testnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-testnet","supported-networks/curtis","supported-networks/cyber","supported-networks/degen-chain","supported-networks/dfk-chain","supported-networks/dogechain-mainnet","supported-networks/dogechain-testnet","supported-networks/dos-chain","supported-networks/energy-web","supported-networks/eos","supported-networks/eth","supported-networks/etherlink-testnet","supported-networks/exosama","supported-networks/fantom","supported-networks/fantom-testnet","supported-networks/flare","supported-networks/flare-songbird","supported-networks/flow","supported-networks/flow-testnet","supported-networks/fraxtal","supported-networks/fuel-mainnet","supported-networks/fuel-testnet","supported-networks/fuji","supported-networks/galadriel-devnet","supported-networks/gnosis","supported-networks/gnosis-chiado","supported-networks/gravity-alpha-mainnet","supported-networks/harmony-shard-0","supported-networks/heco-chain","supported-networks/holesky","supported-networks/hyperliquid","supported-networks/immutable-zkevm","supported-networks/immutable-zkevm-testnet","supported-networks/ink","supported-networks/iotex-network","supported-networks/japan-open-chain","supported-networks/kaia","supported-networks/kakarot-starknet-sepolia","supported-networks/kroma","supported-networks/layeredge-testnet","supported-networks/lightlink-pegasus-testnet","supported-networks/lightlink-phoenix","supported-networks/linea","supported-networks/lisk","supported-networks/lukso","supported-networks/lukso-testnet","supported-networks/manta","supported-networks/manta-pacific-sepolia","supported-networks/mantle","supported-networks/megaeth-testnet","supported-networks/merlin","supported-networks/metall2","supported-networks/meter-mainnet","supported-networks/meter-testnet","supported-networks/mev-commit","supported-networks/mint-mainnet","supported-networks/mode","supported-networks/monad-testnet","supported-networks/moonbase-alpha","supported-networks/moonbeam","supported-networks/morph","supported-networks/nautilus","supported-networks/neo-x-testnet","supported-networks/nibiru-testnet","supported-networks/now-chaint","supported-networks/oasis-emerald","supported-networks/oasis-sapphire","supported-networks/onigiri-subnet","supported-networks/onigiri-test-subnet","supported-networks/ontology-mainnet","supported-networks/ontology-testnet","supported-networks/op-celestia-raspberry","supported-networks/opbnb","supported-networks/optimism","supported-networks/optimism-sepolia","supported-networks/optopia","supported-networks/peaq","supported-networks/plume","supported-networks/polygon","supported-networks/polygon-amoy","supported-networks/polygon-zkevm","supported-networks/polygon-zkevm-cardona-testnet","supported-networks/public-goods-network","supported-networks/pulsechain","supported-networks/puppynet-shibarium","supported-networks/ronin","supported-networks/rootstock","supported-networks/saakuru","supported-networks/satoshivm","supported-networks/scroll","supported-networks/scroll-sepolia","supported-networks/sepolia","supported-networks/shibarium","supported-networks/shimmer-evm","supported-networks/skale-europa","supported-networks/soneium","supported-networks/sonic","supported-networks/sophon","supported-networks/sophon-testnet","supported-networks/stratovm-testnet","supported-networks/superseed","supported-networks/superseed-sepolia-testnet","supported-networks/swell","supported-networks/taiko","supported-networks/tangle","supported-networks/tanssi-demo","supported-networks/taraxa","supported-networks/telos-evm-mainnet","supported-networks/telos-evm-testnet","supported-networks/torus-mainnet","supported-networks/torus-testnet","supported-networks/unichain","supported-networks/unichain-sepolia","supported-networks/unicorn-ultra-nebulas-testnet","supported-networks/velas-mainnet","supported-networks/viction","supported-networks/worldchain","supported-networks/x-layer-mainnet","supported-networks/x-layer-testnet","supported-networks/xdc","supported-networks/xdc-testnet","supported-networks/zeta","supported-networks/zeta-testnet","supported-networks/zircuit","supported-networks/zklink-nova-mainnet","supported-networks/zksync","supported-networks/zksync-sepolia-testnet","supported-networks/zora","supported-networks/zora-sepolia"]} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 596e2b2c..4489ca50 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2658,6 +2658,11 @@ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.8.tgz#21a907684723bbbaa5f0974cf7730bd797eb8e62" integrity sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig== +"@glennsl/rescript-fetch@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@glennsl/rescript-fetch/-/rescript-fetch-0.2.3.tgz#99ab3c2a9c87fcc301d71e906f8cd476a2a17321" + integrity sha512-0MuaXeJHGii0/SKzR4ASB1Wal+ogdnNsD1K6HSTFUVc+TQzAZY+V8Nb7Z8K4OUqMJzmurIgVXNmirx3DC1Huyg== + "@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz" @@ -3525,6 +3530,11 @@ resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-1.1.0.tgz#f817d1d3265ac5415dadc67edab30ae196696438" integrity sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg== +"@rescript/react@^0.13.0": + version "0.13.1" + resolved "https://registry.yarnpkg.com/@rescript/react/-/react-0.13.1.tgz#19a90b2de39e4742bf73f834fe795fa9db5e06d5" + integrity sha512-VIWtu/sAJyYmDVoAhit0LHDYQrW6RqZ6z8sh8san5cjEAT4klv8JWkiaSK3FGUfooUDkGUXXgKTkqyj8zRR21w== + "@scure/base@~1.1.0", "@scure/base@~1.1.2": version "1.1.9" resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" @@ -9114,6 +9124,14 @@ human-signals@^2.1.0: resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== +hypersync-query-builder-component@0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/hypersync-query-builder-component/-/hypersync-query-builder-component-0.2.1.tgz#096f29b2c6d5831fb4d41216c129b585dfefd70b" + integrity sha512-TFm5S0ULIgIPY6Mpft/Fv0pgAIlGAx+xmNBWDzUN4GFhOy91JvQIEg6Msdj7CZjJ4qMxxHTxrUuoHaUhRB1MQA== + dependencies: + "@glennsl/rescript-fetch" "^0.2.3" + "@rescript/react" "^0.13.0" + iconv-lite@0.4.24: version "0.4.24" resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" From df582219b4fded18b7a4e07c5e9cbd73c3cb8b42 Mon Sep 17 00:00:00 2001 From: Jason Date: Wed, 23 Jul 2025 01:05:07 +0200 Subject: [PATCH 2/2] (new networks) --- .../supported-networks/chainweb-testnet-20.md | 63 +++++++++++++++++++ .../supported-networks/chainweb-testnet-21.md | 63 +++++++++++++++++++ docs/HyperIndex/supported-networks/plume.md | 63 +++++++++++++++++++ docs/HyperIndex/supported-networks/tangle.md | 2 +- docs/HyperIndex/supported-networks/taraxa.md | 63 +++++++++++++++++++ .../HyperRPC/hyperrpc-url-endpoints.md | 7 ++- .../HyperSync/hypersync-supported-networks.md | 7 ++- 7 files changed, 263 insertions(+), 5 deletions(-) create mode 100644 docs/HyperIndex/supported-networks/chainweb-testnet-20.md create mode 100644 docs/HyperIndex/supported-networks/chainweb-testnet-21.md create mode 100644 docs/HyperIndex/supported-networks/plume.md create mode 100644 docs/HyperIndex/supported-networks/taraxa.md diff --git a/docs/HyperIndex/supported-networks/chainweb-testnet-20.md b/docs/HyperIndex/supported-networks/chainweb-testnet-20.md new file mode 100644 index 00000000..70e0c88f --- /dev/null +++ b/docs/HyperIndex/supported-networks/chainweb-testnet-20.md @@ -0,0 +1,63 @@ +--- +id: chainweb-testnet-20 +title: Chainweb Testnet 20 +sidebar_label: Chainweb Testnet 20 +slug: /chainweb-testnet-20 +--- + +# Chainweb Testnet 20 + +## Indexing Chainweb Testnet 20 Data with Envio + +| **Field** | **Value** | +|-------------------------------|----------------------------------------------------------------------------------------------------| +| **Chainweb Testnet 20 Chain ID** | 5920 | +| **HyperSync URL Endpoint** | [https://chainweb-testnet-20.hypersync.xyz](https://chainweb-testnet-20.hypersync.xyz) or [https://5920.hypersync.xyz](https://5920.hypersync.xyz) | +| **HyperRPC URL Endpoint** | [https://chainweb-testnet-20.rpc.hypersync.xyz](https://chainweb-testnet-20.rpc.hypersync.xyz) or [https://5920.rpc.hypersync.xyz](https://5920.rpc.hypersync.xyz) | + +--- + +### Tier + +STONE 🪨 + +### Overview + +Envio is a modular hyper-performant data indexing solution for Chainweb Testnet 20, enabling applications and developers to efficiently index and aggregate real-time and historical blockchain data. Envio offers three primary solutions for indexing and accessing large amounts of data: [HyperIndex](/docs/HyperIndex/overview) (a customizable indexing framework), [HyperSync](/docs/HyperSync/overview) (a real-time indexed data layer), and [HyperRPC](/docs/HyperSync/overview-hyperrpc) (extremely fast read-only RPC). + +HyperSync accelerates the synchronization of historical data on Chainweb Testnet 20, enabling what usually takes hours to sync millions of events to be completed in under a minute—up to 1000x faster than traditional RPC methods. + +Designed to optimize the user experience, Envio offers automatic code generation, flexible language support, multi-chain data aggregation, and a reliable, cost-effective hosted service. + +To get started, see our documentation or follow our quickstart [guide](/docs/HyperIndex/contract-import). + +--- + +### Defining Network Configurations + +```yaml +name: IndexerName # Specify indexer name +description: Indexer Description # Include indexer description +networks: + - id: 5920 # Chainweb Testnet 20 + start_block: START_BLOCK_NUMBER # Specify the starting block + contracts: + - name: ContractName + address: + - "0xYourContractAddress1" + - "0xYourContractAddress2" + handler: ./src/EventHandlers.ts + events: + - event: Event # Specify event + - event: Event +``` + +With these steps completed, your application will be set to efficiently index Chainweb Testnet 20 data using Envio’s blockchain indexer. + +For more information on how to set up your config, define a schema, and write event handlers, refer to the guides section in our [documentation](/docs/HyperIndex/configuration-file). + +### Support + +Can’t find what you’re looking for or need support? Reach out to us on [Discord](https://discord.com/invite/Q9qt8gZ2fX); we’re always happy to help! + +--- diff --git a/docs/HyperIndex/supported-networks/chainweb-testnet-21.md b/docs/HyperIndex/supported-networks/chainweb-testnet-21.md new file mode 100644 index 00000000..0d39df17 --- /dev/null +++ b/docs/HyperIndex/supported-networks/chainweb-testnet-21.md @@ -0,0 +1,63 @@ +--- +id: chainweb-testnet-21 +title: Chainweb Testnet 21 +sidebar_label: Chainweb Testnet 21 +slug: /chainweb-testnet-21 +--- + +# Chainweb Testnet 21 + +## Indexing Chainweb Testnet 21 Data with Envio + +| **Field** | **Value** | +|-------------------------------|----------------------------------------------------------------------------------------------------| +| **Chainweb Testnet 21 Chain ID** | 5921 | +| **HyperSync URL Endpoint** | [https://chainweb-testnet-21.hypersync.xyz](https://chainweb-testnet-21.hypersync.xyz) or [https://5921.hypersync.xyz](https://5921.hypersync.xyz) | +| **HyperRPC URL Endpoint** | [https://chainweb-testnet-21.rpc.hypersync.xyz](https://chainweb-testnet-21.rpc.hypersync.xyz) or [https://5921.rpc.hypersync.xyz](https://5921.rpc.hypersync.xyz) | + +--- + +### Tier + +STONE 🪨 + +### Overview + +Envio is a modular hyper-performant data indexing solution for Chainweb Testnet 21, enabling applications and developers to efficiently index and aggregate real-time and historical blockchain data. Envio offers three primary solutions for indexing and accessing large amounts of data: [HyperIndex](/docs/HyperIndex/overview) (a customizable indexing framework), [HyperSync](/docs/HyperSync/overview) (a real-time indexed data layer), and [HyperRPC](/docs/HyperSync/overview-hyperrpc) (extremely fast read-only RPC). + +HyperSync accelerates the synchronization of historical data on Chainweb Testnet 21, enabling what usually takes hours to sync millions of events to be completed in under a minute—up to 1000x faster than traditional RPC methods. + +Designed to optimize the user experience, Envio offers automatic code generation, flexible language support, multi-chain data aggregation, and a reliable, cost-effective hosted service. + +To get started, see our documentation or follow our quickstart [guide](/docs/HyperIndex/contract-import). + +--- + +### Defining Network Configurations + +```yaml +name: IndexerName # Specify indexer name +description: Indexer Description # Include indexer description +networks: + - id: 5921 # Chainweb Testnet 21 + start_block: START_BLOCK_NUMBER # Specify the starting block + contracts: + - name: ContractName + address: + - "0xYourContractAddress1" + - "0xYourContractAddress2" + handler: ./src/EventHandlers.ts + events: + - event: Event # Specify event + - event: Event +``` + +With these steps completed, your application will be set to efficiently index Chainweb Testnet 21 data using Envio’s blockchain indexer. + +For more information on how to set up your config, define a schema, and write event handlers, refer to the guides section in our [documentation](/docs/HyperIndex/configuration-file). + +### Support + +Can’t find what you’re looking for or need support? Reach out to us on [Discord](https://discord.com/invite/Q9qt8gZ2fX); we’re always happy to help! + +--- diff --git a/docs/HyperIndex/supported-networks/plume.md b/docs/HyperIndex/supported-networks/plume.md new file mode 100644 index 00000000..7330bd20 --- /dev/null +++ b/docs/HyperIndex/supported-networks/plume.md @@ -0,0 +1,63 @@ +--- +id: plume +title: Plume +sidebar_label: Plume +slug: /plume +--- + +# Plume + +## Indexing Plume Data with Envio + +| **Field** | **Value** | +|-------------------------------|----------------------------------------------------------------------------------------------------| +| **Plume Chain ID** | 98866 | +| **HyperSync URL Endpoint** | [https://plume.hypersync.xyz](https://plume.hypersync.xyz) or [https://98866.hypersync.xyz](https://98866.hypersync.xyz) | +| **HyperRPC URL Endpoint** | [https://plume.rpc.hypersync.xyz](https://plume.rpc.hypersync.xyz) or [https://98866.rpc.hypersync.xyz](https://98866.rpc.hypersync.xyz) | + +--- + +### Tier + +STONE 🪨 + +### Overview + +Envio is a modular hyper-performant data indexing solution for Plume, enabling applications and developers to efficiently index and aggregate real-time and historical blockchain data. Envio offers three primary solutions for indexing and accessing large amounts of data: [HyperIndex](/docs/HyperIndex/overview) (a customizable indexing framework), [HyperSync](/docs/HyperSync/overview) (a real-time indexed data layer), and [HyperRPC](/docs/HyperSync/overview-hyperrpc) (extremely fast read-only RPC). + +HyperSync accelerates the synchronization of historical data on Plume, enabling what usually takes hours to sync millions of events to be completed in under a minute—up to 1000x faster than traditional RPC methods. + +Designed to optimize the user experience, Envio offers automatic code generation, flexible language support, multi-chain data aggregation, and a reliable, cost-effective hosted service. + +To get started, see our documentation or follow our quickstart [guide](/docs/HyperIndex/contract-import). + +--- + +### Defining Network Configurations + +```yaml +name: IndexerName # Specify indexer name +description: Indexer Description # Include indexer description +networks: + - id: 98866 # Plume + start_block: START_BLOCK_NUMBER # Specify the starting block + contracts: + - name: ContractName + address: + - "0xYourContractAddress1" + - "0xYourContractAddress2" + handler: ./src/EventHandlers.ts + events: + - event: Event # Specify event + - event: Event +``` + +With these steps completed, your application will be set to efficiently index Plume data using Envio’s blockchain indexer. + +For more information on how to set up your config, define a schema, and write event handlers, refer to the guides section in our [documentation](/docs/HyperIndex/configuration-file). + +### Support + +Can’t find what you’re looking for or need support? Reach out to us on [Discord](https://discord.com/invite/Q9qt8gZ2fX); we’re always happy to help! + +--- diff --git a/docs/HyperIndex/supported-networks/tangle.md b/docs/HyperIndex/supported-networks/tangle.md index 4a17f700..7e1ad391 100644 --- a/docs/HyperIndex/supported-networks/tangle.md +++ b/docs/HyperIndex/supported-networks/tangle.md @@ -19,7 +19,7 @@ slug: /tangle ### Tier -BRONZE 🥉 +STONE 🪨 ### Overview diff --git a/docs/HyperIndex/supported-networks/taraxa.md b/docs/HyperIndex/supported-networks/taraxa.md new file mode 100644 index 00000000..127d9c91 --- /dev/null +++ b/docs/HyperIndex/supported-networks/taraxa.md @@ -0,0 +1,63 @@ +--- +id: taraxa +title: Taraxa +sidebar_label: Taraxa +slug: /taraxa +--- + +# Taraxa + +## Indexing Taraxa Data with Envio + +| **Field** | **Value** | +|-------------------------------|----------------------------------------------------------------------------------------------------| +| **Taraxa Chain ID** | 841 | +| **HyperSync URL Endpoint** | [https://taraxa.hypersync.xyz](https://taraxa.hypersync.xyz) or [https://841.hypersync.xyz](https://841.hypersync.xyz) | +| **HyperRPC URL Endpoint** | [https://taraxa.rpc.hypersync.xyz](https://taraxa.rpc.hypersync.xyz) or [https://841.rpc.hypersync.xyz](https://841.rpc.hypersync.xyz) | + +--- + +### Tier + +BRONZE 🥉 + +### Overview + +Envio is a modular hyper-performant data indexing solution for Taraxa, enabling applications and developers to efficiently index and aggregate real-time and historical blockchain data. Envio offers three primary solutions for indexing and accessing large amounts of data: [HyperIndex](/docs/HyperIndex/overview) (a customizable indexing framework), [HyperSync](/docs/HyperSync/overview) (a real-time indexed data layer), and [HyperRPC](/docs/HyperSync/overview-hyperrpc) (extremely fast read-only RPC). + +HyperSync accelerates the synchronization of historical data on Taraxa, enabling what usually takes hours to sync millions of events to be completed in under a minute—up to 1000x faster than traditional RPC methods. + +Designed to optimize the user experience, Envio offers automatic code generation, flexible language support, multi-chain data aggregation, and a reliable, cost-effective hosted service. + +To get started, see our documentation or follow our quickstart [guide](/docs/HyperIndex/contract-import). + +--- + +### Defining Network Configurations + +```yaml +name: IndexerName # Specify indexer name +description: Indexer Description # Include indexer description +networks: + - id: 841 # Taraxa + start_block: START_BLOCK_NUMBER # Specify the starting block + contracts: + - name: ContractName + address: + - "0xYourContractAddress1" + - "0xYourContractAddress2" + handler: ./src/EventHandlers.ts + events: + - event: Event # Specify event + - event: Event +``` + +With these steps completed, your application will be set to efficiently index Taraxa data using Envio’s blockchain indexer. + +For more information on how to set up your config, define a schema, and write event handlers, refer to the guides section in our [documentation](/docs/HyperIndex/configuration-file). + +### Support + +Can’t find what you’re looking for or need support? Reach out to us on [Discord](https://discord.com/invite/Q9qt8gZ2fX); we’re always happy to help! + +--- diff --git a/docs/HyperSync/HyperRPC/hyperrpc-url-endpoints.md b/docs/HyperSync/HyperRPC/hyperrpc-url-endpoints.md index cb256cb3..f2057fc4 100644 --- a/docs/HyperSync/HyperRPC/hyperrpc-url-endpoints.md +++ b/docs/HyperSync/HyperRPC/hyperrpc-url-endpoints.md @@ -38,6 +38,8 @@ Here is a table of the currently supported networks on HyperRPC and their respec | Bsc | 56 | https://bsc.rpc.hypersync.xyz or https://56.rpc.hypersync.xyz | | | Bsc Testnet | 97 | https://bsc-testnet.rpc.hypersync.xyz or https://97.rpc.hypersync.xyz | | | Celo | 42220 | https://celo.rpc.hypersync.xyz or https://42220.rpc.hypersync.xyz | | +| Chainweb Testnet 20 | 5920 | https://chainweb-testnet-20.rpc.hypersync.xyz or https://5920.rpc.hypersync.xyz | | +| Chainweb Testnet 21 | 5921 | https://chainweb-testnet-21.rpc.hypersync.xyz or https://5921.rpc.hypersync.xyz | | | Chiliz | 88888 | https://chiliz.rpc.hypersync.xyz or https://88888.rpc.hypersync.xyz | | | Citrea Testnet | 5115 | https://citrea-testnet.rpc.hypersync.xyz or https://5115.rpc.hypersync.xyz | | | Curtis | 33111 | https://curtis.rpc.hypersync.xyz or https://33111.rpc.hypersync.xyz | | @@ -72,11 +74,10 @@ Here is a table of the currently supported networks on HyperRPC and their respec | Moonbase Alpha | 1287 | https://moonbase-alpha.rpc.hypersync.xyz or https://1287.rpc.hypersync.xyz | | | Moonbeam | 1284 | https://moonbeam.rpc.hypersync.xyz or https://1284.rpc.hypersync.xyz | | | Morph | 2818 | https://morph.rpc.hypersync.xyz or https://2818.rpc.hypersync.xyz | | -| Morph Holesky | 2810 | https://morph-holesky.rpc.hypersync.xyz or https://2810.rpc.hypersync.xyz | | | Opbnb | 204 | https://opbnb.rpc.hypersync.xyz or https://204.rpc.hypersync.xyz | | | Optimism | 10 | https://optimism.rpc.hypersync.xyz or https://10.rpc.hypersync.xyz | | | Optimism Sepolia | 11155420 | https://optimism-sepolia.rpc.hypersync.xyz or https://11155420.rpc.hypersync.xyz | | -| Pharos Devnet | 50002 | https://pharos-devnet.rpc.hypersync.xyz or https://50002.rpc.hypersync.xyz | | +| Plume | 98866 | https://plume.rpc.hypersync.xyz or https://98866.rpc.hypersync.xyz | | | Polygon | 137 | https://polygon.rpc.hypersync.xyz or https://137.rpc.hypersync.xyz | | | Polygon Amoy | 80002 | https://polygon-amoy.rpc.hypersync.xyz or https://80002.rpc.hypersync.xyz | | | Polygon zkEVM | 1101 | https://polygon-zkevm.rpc.hypersync.xyz or https://1101.rpc.hypersync.xyz | | @@ -91,6 +92,8 @@ Here is a table of the currently supported networks on HyperRPC and their respec | Sophon Testnet | 531050104 | https://sophon-testnet.rpc.hypersync.xyz or https://531050104.rpc.hypersync.xyz | | | Superseed | 5330 | https://superseed.rpc.hypersync.xyz or https://5330.rpc.hypersync.xyz | | | Swell | 1923 | https://swell.rpc.hypersync.xyz or https://1923.rpc.hypersync.xyz | | +| Tangle | 5845 | https://tangle.rpc.hypersync.xyz or https://5845.rpc.hypersync.xyz | | +| Taraxa | 841 | https://taraxa.rpc.hypersync.xyz or https://841.rpc.hypersync.xyz | | | Unichain | 130 | https://unichain.rpc.hypersync.xyz or https://130.rpc.hypersync.xyz | | | Unichain Sepolia | 1301 | https://unichain-sepolia.rpc.hypersync.xyz or https://1301.rpc.hypersync.xyz | | | Worldchain | 480 | https://worldchain.rpc.hypersync.xyz or https://480.rpc.hypersync.xyz | | diff --git a/docs/HyperSync/hypersync-supported-networks.md b/docs/HyperSync/hypersync-supported-networks.md index 55b1f1af..ad733cd5 100644 --- a/docs/HyperSync/hypersync-supported-networks.md +++ b/docs/HyperSync/hypersync-supported-networks.md @@ -46,6 +46,8 @@ If you are a network operator or user and would like improved service support or | Bsc | 56 | https://bsc.hypersync.xyz or https://56.hypersync.xyz | 🥉 | | | Bsc Testnet | 97 | https://bsc-testnet.hypersync.xyz or https://97.hypersync.xyz | 🎒 | | | Celo | 42220 | https://celo.hypersync.xyz or https://42220.hypersync.xyz | 🪨 | | +| Chainweb Testnet 20 | 5920 | https://chainweb-testnet-20.hypersync.xyz or https://5920.hypersync.xyz | 🪨 | | +| Chainweb Testnet 21 | 5921 | https://chainweb-testnet-21.hypersync.xyz or https://5921.hypersync.xyz | 🪨 | | | Chiliz | 88888 | https://chiliz.hypersync.xyz or https://88888.hypersync.xyz | 🪨 | | | Citrea Testnet | 5115 | https://citrea-testnet.hypersync.xyz or https://5115.hypersync.xyz | 🪨 | | | Curtis | 33111 | https://curtis.hypersync.xyz or https://33111.hypersync.xyz | 🪨 | | @@ -80,11 +82,10 @@ If you are a network operator or user and would like improved service support or | Moonbase Alpha | 1287 | https://moonbase-alpha.hypersync.xyz or https://1287.hypersync.xyz | 🪨 | | | Moonbeam | 1284 | https://moonbeam.hypersync.xyz or https://1284.hypersync.xyz | 🪨 | | | Morph | 2818 | https://morph.hypersync.xyz or https://2818.hypersync.xyz | 🪨 | | -| Morph Holesky | 2810 | https://morph-holesky.hypersync.xyz or https://2810.hypersync.xyz | 🎒 | | | Opbnb | 204 | https://opbnb.hypersync.xyz or https://204.hypersync.xyz | 🪨 | | | Optimism | 10 | https://optimism.hypersync.xyz or https://10.hypersync.xyz | 🏅 | | | Optimism Sepolia | 11155420 | https://optimism-sepolia.hypersync.xyz or https://11155420.hypersync.xyz | 🎒 | | -| Pharos Devnet | 50002 | https://pharos-devnet.hypersync.xyz or https://50002.hypersync.xyz | 🪨 | | +| Plume | 98866 | https://plume.hypersync.xyz or https://98866.hypersync.xyz | 🪨 | | | Polygon | 137 | https://polygon.hypersync.xyz or https://137.hypersync.xyz | 🥈 | | | Polygon Amoy | 80002 | https://polygon-amoy.hypersync.xyz or https://80002.hypersync.xyz | 🥉 | | | Polygon zkEVM | 1101 | https://polygon-zkevm.hypersync.xyz or https://1101.hypersync.xyz | 🪨 | | @@ -99,6 +100,8 @@ If you are a network operator or user and would like improved service support or | Sophon Testnet | 531050104 | https://sophon-testnet.hypersync.xyz or https://531050104.hypersync.xyz | 🎒 | | | Superseed | 5330 | https://superseed.hypersync.xyz or https://5330.hypersync.xyz | 🪨 | | | Swell | 1923 | https://swell.hypersync.xyz or https://1923.hypersync.xyz | 🪨 | | +| Tangle | 5845 | https://tangle.hypersync.xyz or https://5845.hypersync.xyz | 🪨 | | +| Taraxa | 841 | https://taraxa.hypersync.xyz or https://841.hypersync.xyz | 🥉 | | | Unichain | 130 | https://unichain.hypersync.xyz or https://130.hypersync.xyz | 🪨 | | | Unichain Sepolia | 1301 | https://unichain-sepolia.hypersync.xyz or https://1301.hypersync.xyz | 🎒 | | | Worldchain | 480 | https://worldchain.hypersync.xyz or https://480.hypersync.xyz | 🪨 | |