├── .changeset ├── README.md ├── config.json ├── eight-steaks-run.md ├── empty-balloons-pull.md ├── giant-fans-pretend.md ├── good-insects-relax.md └── honest-icons-raise.md ├── .eslintrc.js ├── .github ├── ISSUE_TEMPLATE │ └── docs_issue.yml ├── assets │ ├── allow-edits-by-maintainers.png │ └── synced-fork.png ├── pull_request_template.md └── workflows │ └── validate.yml ├── .gitignore ├── .npmrc ├── .nvmrc ├── .prettierignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── apps ├── bex │ ├── .prettierignore │ ├── .vitepress │ │ ├── config.ts │ │ ├── sidebar.ts │ │ └── theme │ │ │ └── index.ts │ ├── CHANGELOG.md │ ├── content │ │ ├── developers │ │ │ ├── contracts │ │ │ │ ├── factory │ │ │ │ │ ├── pool-creation-helper.md │ │ │ │ │ ├── stable-pool-factory.md │ │ │ │ │ └── weighted-pool-factory.md │ │ │ │ ├── lp_tokens │ │ │ │ │ ├── underlying.md │ │ │ │ │ └── valuing.md │ │ │ │ ├── pools │ │ │ │ │ ├── exit.md │ │ │ │ │ ├── joins.md │ │ │ │ │ └── pool-interfacing.md │ │ │ │ ├── query.md │ │ │ │ ├── relayers.md │ │ │ │ ├── swaps │ │ │ │ │ ├── batch_swap.md │ │ │ │ │ └── single_swap.md │ │ │ │ └── vault.md │ │ │ ├── guides │ │ │ │ └── pool-creation.md │ │ │ ├── help │ │ │ │ └── error-codes.md │ │ │ ├── index.md │ │ │ ├── migration-guide.md │ │ │ └── sdk │ │ │ │ ├── add-liquidity.md │ │ │ │ ├── index.md │ │ │ │ ├── reference.md │ │ │ │ ├── remove-liquidity.md │ │ │ │ ├── sor.md │ │ │ │ └── swap.md │ │ ├── index.md │ │ ├── learn │ │ │ ├── concepts │ │ │ │ ├── amm.md │ │ │ │ ├── flash-loans.md │ │ │ │ ├── governance.md │ │ │ │ ├── pools │ │ │ │ │ ├── index.md │ │ │ │ │ ├── stable-pools.md │ │ │ │ │ └── weighted-pools.md │ │ │ │ └── vault.md │ │ │ ├── guides │ │ │ │ ├── add-token.md │ │ │ │ ├── fees.md │ │ │ │ ├── liquidity │ │ │ │ │ ├── intro.md │ │ │ │ │ └── pol.md │ │ │ │ ├── pool-configuration.md │ │ │ │ ├── pool-creation.md │ │ │ │ ├── pool-creation │ │ │ │ │ ├── stable_pool.md │ │ │ │ │ └── weighted_composable.md │ │ │ │ └── swaps.md │ │ │ └── index.md │ │ └── public │ │ │ ├── DocsBear.png │ │ │ ├── assets │ │ │ ├── BEND.png │ │ │ ├── BERA.png │ │ │ ├── BERPS.png │ │ │ ├── add_liquidity.png │ │ │ ├── adding-liquidity.png │ │ │ ├── all_pools.png │ │ │ ├── berachain-icon.svg │ │ │ ├── beraswap-pools.png │ │ │ ├── bex-add-liquidity.png │ │ │ ├── bex-fees.png │ │ │ ├── bex-gauge.png │ │ │ ├── bex-pools.png │ │ │ ├── bex-set-prices.png │ │ │ ├── bex-slippage.png │ │ │ ├── bex-splash.png │ │ │ ├── bex-swap.png │ │ │ ├── bex_swap.png │ │ │ ├── bgthub.png │ │ │ ├── create_pool_stable.png │ │ │ ├── dapp-honeyswap.png │ │ │ ├── icon.svg │ │ │ ├── lp_1.png │ │ │ ├── lp_4.png │ │ │ ├── manage_lp.png │ │ │ ├── pool_stake_pol.png │ │ │ ├── reward_vaults.png │ │ │ ├── route.png │ │ │ ├── stable_select_tokens.png │ │ │ ├── stable_set_liq_error.png │ │ │ ├── stable_set_liquidity.png │ │ │ ├── stake_reward_vault.png │ │ │ ├── swap_fee.png │ │ │ ├── swap_route.png │ │ │ ├── swap_settings.png │ │ │ ├── swap_slippage.png │ │ │ ├── usercmd-input.png │ │ │ ├── vault.png │ │ │ ├── videos │ │ │ │ └── lpandstake.mp4 │ │ │ ├── weighted_intial_liquidity.png │ │ │ ├── weighted_pool.png │ │ │ ├── weighted_set_liquidity.png │ │ │ └── withdraw_lp.png │ │ │ ├── fonts │ │ │ ├── IBM_Plex_Mono │ │ │ │ ├── IBMPlexMono-Bold.ttf │ │ │ │ ├── IBMPlexMono-BoldItalic.ttf │ │ │ │ ├── IBMPlexMono-ExtraLight.ttf │ │ │ │ ├── IBMPlexMono-ExtraLightItalic.ttf │ │ │ │ ├── IBMPlexMono-Italic.ttf │ │ │ │ ├── IBMPlexMono-Light.ttf │ │ │ │ ├── IBMPlexMono-LightItalic.ttf │ │ │ │ ├── IBMPlexMono-Medium.ttf │ │ │ │ ├── IBMPlexMono-MediumItalic.ttf │ │ │ │ ├── IBMPlexMono-Regular.ttf │ │ │ │ ├── IBMPlexMono-SemiBold.ttf │ │ │ │ ├── IBMPlexMono-SemiBoldItalic.ttf │ │ │ │ ├── IBMPlexMono-Thin.ttf │ │ │ │ ├── IBMPlexMono-ThinItalic.ttf │ │ │ │ └── OFL.txt │ │ │ └── IBM_Plex_Sans │ │ │ │ ├── IBMPlexSans-Bold.ttf │ │ │ │ ├── IBMPlexSans-BoldItalic.ttf │ │ │ │ ├── IBMPlexSans-ExtraLight.ttf │ │ │ │ ├── IBMPlexSans-ExtraLightItalic.ttf │ │ │ │ ├── IBMPlexSans-Italic.ttf │ │ │ │ ├── IBMPlexSans-Light.ttf │ │ │ │ ├── IBMPlexSans-LightItalic.ttf │ │ │ │ ├── IBMPlexSans-Medium.ttf │ │ │ │ ├── IBMPlexSans-MediumItalic.ttf │ │ │ │ ├── IBMPlexSans-Regular.ttf │ │ │ │ ├── IBMPlexSans-SemiBold.ttf │ │ │ │ ├── IBMPlexSans-SemiBoldItalic.ttf │ │ │ │ ├── IBMPlexSans-Thin.ttf │ │ │ │ ├── IBMPlexSans-ThinItalic.ttf │ │ │ │ └── OFL.txt │ │ │ ├── previewDocs.jpg │ │ │ └── weighted_pool.png │ └── package.json └── core │ ├── .prettierignore │ ├── .vitepress │ ├── config.ts │ ├── sidebar.ts │ └── theme │ │ ├── components │ │ └── ApiTester.vue │ │ └── index.ts │ ├── CHANGELOG.md │ ├── content │ ├── beacon-kit │ │ ├── api.md │ │ ├── changelog.md │ │ ├── cli.md │ │ └── configuration.md │ ├── developers │ │ ├── claim-api.md │ │ ├── contracts │ │ │ ├── beacondeposit.md │ │ │ ├── berachef.md │ │ │ ├── bgt-staker.md │ │ │ ├── bgt-token.md │ │ │ ├── bgtincentivedistributor.md │ │ │ ├── block-reward-controller.md │ │ │ ├── create2.md │ │ │ ├── distributor.md │ │ │ ├── fee-collector.md │ │ │ ├── governance.md │ │ │ ├── honey-factory-reader.md │ │ │ ├── honey-factory.md │ │ │ ├── honey-token.md │ │ │ ├── multicall3.md │ │ │ ├── permit2.md │ │ │ ├── reward-vault-factory.md │ │ │ ├── reward-vault.md │ │ │ ├── timelock.md │ │ │ └── wbera-token.md │ │ ├── deployed-contracts.md │ │ ├── developer-tools.md │ │ ├── guides │ │ │ ├── advanced-pol.md │ │ │ ├── community-guides.md │ │ │ ├── create-erc20-contract-using-foundry.md │ │ │ ├── create-helloworld-contract-using-hardhat.md │ │ │ ├── deploy-contract-using-nextjs-walletconnect.md │ │ │ ├── eip7702-basics.md │ │ │ ├── eip7702-batch-transactions.md │ │ │ ├── eip7702-gas-sponsorship.md │ │ │ └── migration-guide.md │ │ ├── index.md │ │ ├── network-configurations.md │ │ └── quickstart │ │ │ ├── frontend.md │ │ │ ├── index.md │ │ │ └── pol-integration.md │ ├── index.md │ ├── learn │ │ ├── berachain-nfts.md │ │ ├── claim-bera-airdrop.md │ │ ├── connect-to-berachain.md │ │ ├── dapps │ │ │ ├── berahub.md │ │ │ ├── beratrail.md │ │ │ ├── bex.md │ │ │ └── honey-swap.md │ │ ├── governance │ │ │ ├── index.md │ │ │ └── rewardvault.md │ │ ├── guides │ │ │ ├── add-incentives-for-reward-vault.md │ │ │ ├── boost-a-validator.md │ │ │ ├── claim-incentives.md │ │ │ ├── safe-add-incentives-for-reward-vault.md │ │ │ └── setup-reward-vault.md │ │ ├── help │ │ │ ├── faqs.md │ │ │ └── glossary.md │ │ ├── how-to-get-bera.md │ │ ├── index.md │ │ ├── pol │ │ │ ├── blockrewards.md │ │ │ ├── changelog.md │ │ │ ├── faqs.md │ │ │ ├── incentives.md │ │ │ ├── index.md │ │ │ ├── participants.md │ │ │ ├── rewardvaults.md │ │ │ ├── tokens │ │ │ │ ├── bera.md │ │ │ │ ├── bgt.md │ │ │ │ ├── honey.md │ │ │ │ └── tokenomics.md │ │ │ └── vaults.md │ │ ├── what-is-beaconkit.md │ │ └── what-is-proof-of-liquidity.md │ ├── nodes │ │ ├── beaconkit-consensus.md │ │ ├── evm-execution.md │ │ ├── faq.md │ │ ├── guides │ │ │ ├── bectra.md │ │ │ ├── distribute-block-rewards.md │ │ │ ├── docker-devnet.md │ │ │ ├── increase-validator-bera-stake.md │ │ │ ├── kurtosis.md │ │ │ ├── manage-incentives-commission.md │ │ │ ├── operator-address.md │ │ │ ├── reward-allocation.md │ │ │ ├── validator.md │ │ │ └── withdraw-stake.md │ │ ├── index.md │ │ ├── production-checklist.md │ │ ├── quickstart.md │ │ └── validator-lifecycle.md │ └── public │ │ ├── DocsBear.png │ │ ├── assets │ │ ├── BEND.png │ │ ├── BERA.png │ │ ├── BERPS.png │ │ ├── BEX.png │ │ ├── BGT.png │ │ ├── EIP7702-Gas-Sponsorship-Diagram-1.png │ │ ├── HONEY.png │ │ ├── add-address.png │ │ ├── add-incentive-params.png │ │ ├── add-incentives-reward-vault-added.png │ │ ├── add-incentives-reward-vault-modal.png │ │ ├── add-incentives-reward-vault-success.png │ │ ├── add-incentives-reward-vault.png │ │ ├── add-incentives-vaults.png │ │ ├── auto-incentivizer.png │ │ ├── beacon-kit-github-repository.png │ │ ├── beaconkit-banner.png │ │ ├── bend-dapp.png │ │ ├── bera-allocation.png │ │ ├── bera-bridge.png │ │ ├── bera-inflation.png │ │ ├── berachain-airdrop.jpg │ │ ├── berachain-bridging-layerzero.png │ │ ├── berachain-change-validator-commission-rate-process.png │ │ ├── berachain-devnet-kurtosis-blockexplorer.png │ │ ├── berachain-ethereum-vs-beaconkit.png │ │ ├── berachain-frontend-01.png │ │ ├── berachain-frontend-02.png │ │ ├── berachain-frontend-03.png │ │ ├── berachain-frontend-04.png │ │ ├── berachain-icon.svg │ │ ├── berachain-incentive-marketplace.png │ │ ├── berachain-local-devnet-metamask-configuration.png │ │ ├── berachain-node-architecture.png │ │ ├── berachain-polaris-vs-beaconkit.png │ │ ├── berachain-pos-vs-pol.png │ │ ├── berachain-reward-vault-staking-bex.png │ │ ├── berachain-testnet-faucet.png │ │ ├── berachaindotcom.png │ │ ├── berahub.png │ │ ├── berps-dapp.png │ │ ├── bex-dapp.png │ │ ├── bgt-apr-example.png │ │ ├── boost-apr-example.png │ │ ├── boost-validator-queue-boost.png │ │ ├── boost-validator-validator.png │ │ ├── boost-validator-validators.png │ │ ├── chart 2.png │ │ ├── claim-incentives-claim-modal.png │ │ ├── claim-incentives-hub.png │ │ ├── claim-incentives-portfolio.png │ │ ├── complex-emission.png │ │ ├── dapp-beratrail.png │ │ ├── dapp-bgtstation.png │ │ ├── dapp-faucet.png │ │ ├── dapp-honeyswap.png │ │ ├── eip7702-basics.png │ │ ├── emission.jpg │ │ ├── execute-transaction.png │ │ ├── geth-bectra-upgrade.png │ │ ├── governance-process.png │ │ ├── guide-berachain-walletconnect-account-connected.png │ │ ├── guide-berachain-walletconnect-project-config.png │ │ ├── guide-berachain-walletconnect-project-id.png │ │ ├── guide-berachain-walletconnect-setup-project.png │ │ ├── guide-berachain-walletconnect-web3modal-button.png │ │ ├── guide-berachain-walletconnect-web3modal-connected.png │ │ ├── guide-berachain-walletconnect-web3modal-contract-deploy-blockexplore.png │ │ ├── guide-berachain-walletconnect-web3modal-contract-deploy-confirmation.png │ │ ├── guide-berachain-walletconnect-web3modal-contract-deploy-success.png │ │ ├── guide-berachain-walletconnect-web3modal-contract-greeting.png │ │ ├── guide-berachain-walletconnect-web3modal-modal.png │ │ ├── guide-berachain-walletconnect-web3modal-signature-prompt.png │ │ ├── guide-berachain-walletconnect-web3modal-signature-verification.png │ │ ├── honey-minting.png │ │ ├── honey_swap.png │ │ ├── icon.svg │ │ ├── metamask-add-network-01.png │ │ ├── metamask-add-network-02.png │ │ ├── metamask-add-network-03.png │ │ ├── metamask-add-network-04.png │ │ ├── metamask-chrome-store.png │ │ ├── metamask-create-password.png │ │ ├── metamask-get-started.png │ │ ├── metamask-recovery-phrase.png │ │ ├── metamask-testnet.png │ │ ├── new-transaction.png │ │ ├── nft-bridge.png │ │ ├── pol-overview-devs.png │ │ ├── polaris-vs-beaconkit.png │ │ ├── proof-of-liquidity-flywheel.png │ │ ├── proof-of-liquidity-steps.png │ │ ├── reward-allocation.png │ │ ├── reward-vault-incentives.png │ │ ├── reward-vaults.png │ │ ├── send-batch.png │ │ ├── updatedemission.png │ │ ├── v1-vs-v2.png │ │ ├── val-stakeholder-overview.png │ │ ├── validator-extended-lifecycle.png │ │ └── validator-lifecycle.png │ │ ├── favicon.ico │ │ ├── fonts │ │ ├── IBM_Plex_Mono │ │ │ ├── IBMPlexMono-Bold.ttf │ │ │ ├── IBMPlexMono-BoldItalic.ttf │ │ │ ├── IBMPlexMono-ExtraLight.ttf │ │ │ ├── IBMPlexMono-ExtraLightItalic.ttf │ │ │ ├── IBMPlexMono-Italic.ttf │ │ │ ├── IBMPlexMono-Light.ttf │ │ │ ├── IBMPlexMono-LightItalic.ttf │ │ │ ├── IBMPlexMono-Medium.ttf │ │ │ ├── IBMPlexMono-MediumItalic.ttf │ │ │ ├── IBMPlexMono-Regular.ttf │ │ │ ├── IBMPlexMono-SemiBold.ttf │ │ │ ├── IBMPlexMono-SemiBoldItalic.ttf │ │ │ ├── IBMPlexMono-Thin.ttf │ │ │ ├── IBMPlexMono-ThinItalic.ttf │ │ │ └── OFL.txt │ │ └── IBM_Plex_Sans │ │ │ ├── IBMPlexSans-Bold.ttf │ │ │ ├── IBMPlexSans-BoldItalic.ttf │ │ │ ├── IBMPlexSans-ExtraLight.ttf │ │ │ ├── IBMPlexSans-ExtraLightItalic.ttf │ │ │ ├── IBMPlexSans-Italic.ttf │ │ │ ├── IBMPlexSans-Light.ttf │ │ │ ├── IBMPlexSans-LightItalic.ttf │ │ │ ├── IBMPlexSans-Medium.ttf │ │ │ ├── IBMPlexSans-MediumItalic.ttf │ │ │ ├── IBMPlexSans-Regular.ttf │ │ │ ├── IBMPlexSans-SemiBold.ttf │ │ │ ├── IBMPlexSans-SemiBoldItalic.ttf │ │ │ ├── IBMPlexSans-Thin.ttf │ │ │ ├── IBMPlexSans-ThinItalic.ttf │ │ │ └── OFL.txt │ │ └── previewDocs.jpg │ ├── package.json │ └── vercel.json ├── package.json ├── packages ├── config │ ├── .prettierignore │ ├── CHANGELOG.md │ ├── README.md │ ├── constants.js │ ├── constants.json │ └── package.json └── ui │ ├── .prettierignore │ ├── AddNetwork.vue │ ├── AskCookbook.vue │ ├── CHANGELOG.md │ ├── CopyToClipboard.vue │ ├── Feature.vue │ ├── Fidget.vue │ ├── Flyout.vue │ ├── NavBar.vue │ ├── NavBarMenu.vue │ ├── NavBarMenuLink.vue │ ├── NavBarWarning.vue │ ├── NavScreenMenuGroup.vue │ ├── Sidebar.vue │ ├── Token.vue │ ├── global.d.ts │ ├── package.json │ ├── style.css │ ├── tsconfig.json │ └── tsconfig.node.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── turbo.json └── vercel.json /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@3.0.2/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "restricted", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /.changeset/eight-steaks-run.md: -------------------------------------------------------------------------------- 1 | --- 2 | "@berachain/core": patch 3 | --- 4 | 5 | update section on fees from native dapps 6 | -------------------------------------------------------------------------------- /.changeset/empty-balloons-pull.md: -------------------------------------------------------------------------------- 1 | --- 2 | "@berachain/core": patch 3 | --- 4 | 5 | update devtooling section 6 | -------------------------------------------------------------------------------- /.changeset/giant-fans-pretend.md: -------------------------------------------------------------------------------- 1 | --- 2 | "@berachain/core": patch 3 | --- 4 | 5 | add default allocation 6 | -------------------------------------------------------------------------------- /.changeset/good-insects-relax.md: -------------------------------------------------------------------------------- 1 | --- 2 | "@berachain/core": patch 3 | --- 4 | 5 | update images 6 | -------------------------------------------------------------------------------- /.changeset/honest-icons-raise.md: -------------------------------------------------------------------------------- 1 | --- 2 | "@berachain/core": patch 3 | --- 4 | 5 | update tooling 6 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | // This tells ESLint to load the config from the package `eslint-config-custom` 4 | extends: ["custom"], 5 | settings: { 6 | next: { 7 | rootDir: ["apps/*/"], 8 | }, 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/docs_issue.yml: -------------------------------------------------------------------------------- 1 | name: Documentation Issue 2 | description: Tell us about missing or incorrect documentation. 3 | body: 4 | - type: markdown 5 | attributes: 6 | value: | 7 | Thank you for submitting a documentation request. It helps make Berachain better. 8 | 9 | PLEASE make sure you've read [Development Workflow](https://github.com/berachain/docs/blob/main/CONTRIBUTING.md#development-workflow) and have read and understood the [CODE OF CONDUCT](https://github.com/berachain/docs/blob/main/CODE_OF_CONDUCT.md). 10 | 11 | If it's a small change, like misspelling or example that needs updating, feel free to submit a PR instead of creating this issue. 12 | 13 | - type: dropdown 14 | id: type 15 | attributes: 16 | label: What is the type of issue? 17 | multiple: true 18 | options: 19 | - Documentation is missing 20 | - Documentation is incorrect 21 | - Documentation is confusing 22 | - Example code is not working 23 | - Feature request 24 | - Frotend bug 25 | - Something else 26 | 27 | - type: textarea 28 | id: issue 29 | attributes: 30 | label: What is the issue? 31 | validations: 32 | required: true 33 | 34 | - type: textarea 35 | id: location 36 | attributes: 37 | label: Where did you find it? 38 | description: Please provide the URL(s) where you found this issue. 39 | validations: 40 | required: true 41 | -------------------------------------------------------------------------------- /.github/assets/allow-edits-by-maintainers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/.github/assets/allow-edits-by-maintainers.png -------------------------------------------------------------------------------- /.github/assets/synced-fork.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/.github/assets/synced-fork.png -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | ## Description 2 | 3 | What changes are made in this PR? Is it a feature or a bug fix? 4 | 5 | Does it close a specific issue? 6 | 7 | Example: 8 | 9 | ``` 10 | Closes #1 11 | ``` 12 | 13 | ## Contribution 14 | 15 | - [ ] I have followed the [Development Workflow](https://github.com/berachain/docs/blob/main/CONTRIBUTING.md#development-workflow) 16 | - [ ] I have read the [CODE OF CONDUCT](https://github.com/berachain/docs/blob/main/CODE_OF_CONDUCT.md) 17 | 18 | - [ ] I HAVE MADE SURE TO ALLOW MAINTAINERS TO EDIT THIS PULL REQUEST 19 | 20 | Allow Maintainers to Edit 21 | 22 | - [ ] I have synced my fork so that it is up to date with the latest changes 23 | 24 | Synced Fork With Remote Upstream 25 | 26 | Let us know your wallet address/ENS: 27 | 28 | ``` 29 | 0xYourAddress 30 | ``` 31 | -------------------------------------------------------------------------------- /.github/workflows/validate.yml: -------------------------------------------------------------------------------- 1 | name: Validate CI 2 | 3 | on: 4 | pull_request: 5 | 6 | jobs: 7 | validate: 8 | runs-on: ubuntu-latest 9 | 10 | steps: 11 | - uses: actions/checkout@v4 12 | 13 | - name: Setup Node.js 14 | uses: actions/setup-node@v4 15 | with: 16 | node-version-file: '.nvmrc' 17 | 18 | - name: Setup pnpm 19 | uses: pnpm/action-setup@v2 20 | 21 | - name: Install dependencies 22 | run: pnpm install 23 | 24 | - name: Check Formatting 25 | run: | 26 | pnpm format:check -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | node_modules 5 | .pnp 6 | .pnp.js 7 | 8 | # testing 9 | coverage 10 | 11 | # next.js 12 | .next/ 13 | out/ 14 | build 15 | 16 | # misc 17 | .DS_Store 18 | *.pem 19 | 20 | # debug 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | 25 | # local env files 26 | .env 27 | .env.local 28 | .env.development.local 29 | .env.test.local 30 | .env.production.local 31 | 32 | # turbo 33 | .turbo 34 | 35 | # vercel 36 | .vercel 37 | 38 | **/dist 39 | 40 | .vscode/ 41 | 42 | **/.vitepress/cache/ 43 | **/.vitepress/dist/ 44 | 45 | .chatgpt-md-translator 46 | .prompt.md 47 | translate.sh 48 | 49 | # other package manager lock files 50 | package-lock.json 51 | yarn.lock 52 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | auto-install-peers=true 2 | engine-strict=true 3 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 20.11.0 -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | cache 3 | .turbo 4 | public 5 | package.json 6 | node_modules 7 | CHANGELOG.md 8 | .changeset 9 | .changeset/*.json 10 | .changeset/*.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) Berachain Foundation and affiliates. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 🐻 Berachain Monorepo Docs 2 | 3 | This is a monolithic repository that contains all the documentation for [Berachain](https://www.berachain.com/) and BEX. 4 | 5 | ## Requirements 6 | 7 | - NVM or Node `v20.11.0` or greater 8 | - [pnpm](https://pnpm.io/) (recommended) 9 | 10 | ## Turborepo Folder Structure 11 | 12 | This Turborepo includes the following packages/apps: 13 | 14 | ### Docs 15 | 16 | All docs are built with [Vitepress](https://vitepress.dev) - Vite & Vue Powered Static Site Generator. 17 | 18 | - `apps/bex`- Main docs repository for [https://docs.bex.berachain.com](https://docs.bex.berachain.com) 19 | - `apps/core`- Main docs repository for [https://docs.berachain.com](https://docs.berachain.com) 20 | 21 | ### Packages 22 | 23 | A series of packages that are shared with various `apps` (doc sites). 24 | 25 | - `packages/ui`: All Vitepress vue components used by the different doc apps. 26 | - `packages/config`: All configurations and constants 27 | 28 | ## Quick Start 29 | 30 | Install dependencies for all apps and packages. 31 | 32 | ```bash 33 | # FROM: ./ 34 | 35 | pnpm install; 36 | ``` 37 | 38 | If you'd like to run all apps at the same time, run the following: 39 | 40 | ```bash 41 | # FROM: ./ 42 | 43 | pnpm dev; 44 | 45 | # @berachain/bex:dev - http://localhost:5173 46 | # @berachain/core:dev - http://localhost:5176 47 | ``` 48 | 49 | If you'd like to run an individual app, run the following: 50 | 51 | ```bash 52 | # FROM: ./ 53 | 54 | pnpm dev --filter @berachain/core; 55 | ``` 56 | 57 | ## Contributing 58 | 59 | ### Code Of Conduct 60 | 61 | Please see [Code of Conduct](CODE_OF_CONDUCT.md). 62 | 63 | ### Contributing Guide 64 | 65 | Please see [CONTRIBUTING.md](CONTRIBUTING.md) on how to contribute and also see the [development workflow](CONTRIBUTING.md#development-workflow). 66 | 67 | ## License 68 | 69 | Berachain Docs [License](LICENSE) 70 | -------------------------------------------------------------------------------- /apps/bex/.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | cache 3 | .turbo 4 | public 5 | package.json 6 | node_modules 7 | CHANGELOG.md -------------------------------------------------------------------------------- /apps/bex/.vitepress/theme/index.ts: -------------------------------------------------------------------------------- 1 | // Imports 2 | // ======================================================== 3 | import { h, onMounted } from "vue"; 4 | import DefaultTheme from "vitepress/theme"; 5 | import Fidget from "@berachain/ui/Fidget"; 6 | import "@berachain/ui/style"; 7 | import { mountVercelToolbar } from "@vercel/toolbar/vite"; 8 | 9 | // Theme Configuration 10 | // ======================================================== 11 | export default { 12 | extends: DefaultTheme, 13 | Layout: () => { 14 | // Mount the Vercel toolbar when the component is mounted 15 | onMounted(() => { 16 | mountVercelToolbar(); 17 | }); 18 | 19 | return h(DefaultTheme.Layout, null, { 20 | // https://vitepress.dev/guide/extending-default-theme#layout-slots 21 | "sidebar-nav-after": () => h(Fidget), 22 | }); 23 | }, 24 | enhanceApp({ app, router, siteData }) { 25 | // Extended here 26 | }, 27 | }; 28 | -------------------------------------------------------------------------------- /apps/bex/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @berachain/bex 2 | 3 | ## 1.1.5 4 | 5 | ### Patch Changes 6 | 7 | - Updated dependencies 8 | - @berachain/config@1.2.0 9 | 10 | ## 1.1.4 11 | 12 | ### Patch Changes 13 | 14 | - Revised homepages to remove sidebar and emphasize other docs 15 | - Updated dependencies 16 | - @berachain/ui@1.1.1 17 | 18 | ## 1.1.3 19 | 20 | ### Patch Changes 21 | 22 | - Updated dependencies 23 | - @berachain/ui@1.1.0 24 | 25 | ## 1.1.2 26 | 27 | ### Patch Changes 28 | 29 | - Updated dependencies 30 | - @berachain/config@1.1.1 31 | 32 | ## 1.1.1 33 | 34 | ### Patch Changes 35 | 36 | - Updated dependencies 37 | - @berachain/ui@1.0.1 38 | 39 | ## 1.1.0 40 | 41 | ### Minor Changes 42 | 43 | - Updated constants variables 44 | 45 | ## 1.0.1 46 | 47 | ### Patch Changes 48 | 49 | - Updated dependencies [c7a86e4] 50 | - @berachain/config@1.1.0 51 | 52 | ## 1.0.0 53 | 54 | ### Major Changes 55 | 56 | - Initial versions for bend, berps, bex, and core 57 | 58 | ## 0.0.1 59 | 60 | ### Patch Changes 61 | 62 | - Updated dependencies 63 | - @berachain/config@1.0.0 64 | - @berachain/ui@1.0.0 65 | -------------------------------------------------------------------------------- /apps/bex/content/developers/contracts/factory/stable-pool-factory.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # ComposableStablePoolFactory 6 | 7 | > {{config.mainnet.contracts.bex.stablePoolFactory.address}} | ABI JSON 8 | 9 | ## Functions 10 | 11 | ### create 12 | 13 | _Deploys a new `ComposableStablePool`._ 14 | 15 | ```solidity 16 | function create( 17 | string memory name, 18 | string memory symbol, 19 | IERC20[] memory tokens, 20 | uint256 amplificationParameter, 21 | IRateProvider[] memory rateProviders, 22 | uint256[] memory tokenRateCacheDurations, 23 | bool exemptFromYieldProtocolFeeFlag, 24 | uint256 swapFeePercentage, 25 | address owner, 26 | bytes32 salt 27 | ) external returns (ComposableStablePool) 28 | ``` 29 | 30 | **Parameters** 31 | 32 | | Name | Type | Description | 33 | | ------------------------------ | --------------- | --------------------------------------------------------------------- | 34 | | name | string | The name of the pool token | 35 | | symbol | string | The symbol of the pool token | 36 | | tokens | IERC20[] | Array of token addresses in the pool | 37 | | amplificationParameter | uint256 | The amplification parameter (A factor) for the pool | 38 | | rateProviders | IRateProvider[] | Array of rate provider addresses for each token | 39 | | tokenRateCacheDurations | uint256[] | Array of cache durations for each token's rate | 40 | | exemptFromYieldProtocolFeeFlag | bool | Boolean flag indicating if tokens are exempt from yield protocol fees | 41 | | swapFeePercentage | uint256 | The swap fee percentage for the pool | 42 | | owner | address | The owner address of the pool | 43 | | salt | bytes32 | Unique salt for deterministic pool address creation | 44 | 45 | ### isPoolFromFactory 46 | 47 | _Returns true if `pool` was created by this factory._ 48 | 49 | ```solidity 50 | function isPoolFromFactory(address pool) external view returns (bool); 51 | ``` 52 | 53 | ### isDisabled 54 | 55 | _Check whether the derived factory has been disabled._ 56 | 57 | ```solidity 58 | function isDisabled() external view returns (bool); 59 | ``` 60 | 61 | ### disable 62 | 63 | _Disable the factory, preventing the creation of more pools. Already existing pools are unaffected. 64 | Once a factory is disabled, it cannot be re-enabled._ 65 | 66 | ```solidity 67 | function disable() external; 68 | ``` 69 | -------------------------------------------------------------------------------- /apps/bex/content/developers/contracts/factory/weighted-pool-factory.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # WeightedPoolFactory 6 | 7 | > {{config.mainnet.contracts.bex.weightedPoolFactory.address}} | ABI JSON 8 | 9 | ## Functions 10 | 11 | ### create 12 | 13 | _Deploys a new `WeightedPool`._ 14 | 15 | ```solidity 16 | function create( 17 | string memory name, 18 | string memory symbol, 19 | IERC20[] memory tokens, 20 | uint256[] memory normalizedWeights, 21 | IRateProvider[] memory rateProviders, 22 | uint256 swapFeePercentage, 23 | address owner, 24 | bytes32 salt 25 | ) external returns (address); 26 | ``` 27 | 28 | **Parameters** 29 | 30 | | Name | Type | Description | 31 | | ----------------- | --------------- | --------------------------------------------------- | 32 | | name | string | The name of the pool token | 33 | | symbol | string | The symbol of the pool token | 34 | | tokens | IERC20[] | Array of token addresses in the pool | 35 | | normalizedWeights | uint256[] | Array of normalized weights for each token | 36 | | rateProviders | IRateProvider[] | Array of rate provider addresses for each token | 37 | | swapFeePercentage | uint256 | The swap fee percentage for the pool | 38 | | owner | address | The owner address of the pool | 39 | | salt | bytes32 | Unique salt for deterministic pool address creation | 40 | 41 | ### isPoolFromFactory 42 | 43 | _Returns true if `pool` was created by this factory._ 44 | 45 | ```solidity 46 | function isPoolFromFactory(address pool) external view returns (bool); 47 | ``` 48 | 49 | ### isDisabled 50 | 51 | _Check whether the derived factory has been disabled._ 52 | 53 | ```solidity 54 | function isDisabled() external view returns (bool); 55 | ``` 56 | 57 | ### disable 58 | 59 | _Disable the factory, preventing the creation of more pools. Already existing pools are unaffected. 60 | Once a factory is disabled, it cannot be re-enabled._ 61 | 62 | ```solidity 63 | function disable() external; 64 | ``` 65 | -------------------------------------------------------------------------------- /apps/bex/content/developers/contracts/lp_tokens/underlying.md: -------------------------------------------------------------------------------- 1 | # Underlying Tokens in BEX 2 | 3 | ## Overview 4 | 5 | It's common to want to know what underlying tokens a BEX LP token represents. This documentation explains how to query this information directly from the BEX contract and LP tokens. 6 | 7 | ## Querying the BEX Contract and LP Tokens 8 | 9 | The BEX contract can provide the exact number of tokens in a pool. By querying this information and calculating your share of the pool, you can determine your underlying token balances. 10 | 11 | ### Step-by-Step Process 12 | 13 | 1. Query the BEX contract for pool tokens and balances 14 | 2. Calculate your pool share 15 | 3. Calculate your underlying token balances 16 | 17 | ### Pseudocode 18 | 19 | ```solidity 20 | (tokens, balances, lastChangeBlock) = vault.getPoolTokens(poolId); 21 | yourPoolShare = lpToken.balanceOf(yourAddress) / lpToken.totalSupply(); 22 | uint256[] yourUnderlyingBalances = new uint256[](balances.length); 23 | for (i = 0; i < balances.length; i++) { 24 | yourUnderlyingBalances[i] = balances[i] * yourPoolShare; 25 | } 26 | return (tokens, yourUnderlyingBalances); 27 | ``` 28 | 29 | ## Special Considerations 30 | 31 | ### Stable Pools 32 | 33 | For stable pools in BEX: 34 | 35 | 1. Use `getActualSupply()` instead of `totalSupply()` to get the correct pool supply 36 | 2. If you've staked your LP tokens, calculate your total LP token balance as: 37 | ```solidity 38 | myLpTokens = lpToken.balanceOf(yourAddress) + lpStakingContract.balanceOf(yourAddress); 39 | ``` 40 | 41 | ## Example: Querying BERA/HONEY Pool 42 | 43 | Let's say you want to know your underlying BERA and HONEY balances for a BERA/HONEY pool: 44 | 45 | | Step | Action | Result | 46 | | ---- | -------------------- | ----------------------------------------------------------- | 47 | | 1 | Query BEX | tokens = [BERA, HONEY], balances = [1000 BERA, 10000 HONEY] | 48 | | 2 | Get LP token balance | yourLpTokens = 100 | 49 | | 3 | Get total LP supply | actualSupply = getActualSupply() = 1000 | 50 | | 4 | Calculate pool share | yourPoolShare = 100 / 1000 = 0.1 (10%) | 51 | | 5 | Calculate underlying | yourBera = 1000 \* 0.1 = 100 BERA | 52 | | 6 | Calculate underlying | yourHoney = 10000 \* 0.1 = 1000 HONEY | 53 | 54 | In this example, your 100 LP tokens represent 100 BERA and 1000 HONEY. 55 | -------------------------------------------------------------------------------- /apps/bex/content/developers/contracts/lp_tokens/valuing.md: -------------------------------------------------------------------------------- 1 | # Valuing BEX LP Tokens 2 | 3 | ## Overview 4 | 5 | It's common to want to know the value of a BEX LP token. This generally comes down to its Net Asset Value (NAV), i.e., the value of the underlying tokens. 6 | 7 | ## NAV Calculation 8 | 9 | ### Equation 10 | 11 | The Net Asset Value (NAV) of an LP token is calculated as: 12 | 13 | $$Price_{LP\ token} = \frac{\sum_i(Balance_i \times Price_i)}{Supply_{LP\ Tokens}}$$ 14 | 15 | Where: 16 | 17 | - Balance₍ᵢ₎ is the balance of token i in the pool 18 | - Price₍ᵢ₎ is the market price of token i (e.g., from an oracle or price feed) 19 | - Supply₍ₗₚ₎ is the total supply of LP tokens 20 | 21 | ### Pseudocode 22 | 23 | ```solidity 24 | (tokens, balances, lastChangeBlock) = vault.getPoolTokens(poolId); 25 | prices = fetchPricesFromPriceProvider(tokens); // e.g., from an oracle 26 | poolValueUsd = sum(balances[i] * price[i]); 27 | lpTokenPriceUsd = poolValueUsd / lpToken.totalSupply(); 28 | ``` 29 | 30 | ## Special Considerations 31 | 32 | ### Stable Pools 33 | 34 | For stable pools, they have pre-minted LP tokens. In such cases: 35 | 36 | - Use `getActualSupply()` instead of `totalSupply()` to get the correct pool supply 37 | 38 | ### Calculating Value for a Specific Address 39 | 40 | To calculate the value of LP tokens held by a specific address: 41 | 42 | ```solidity 43 | myLpTokenValueUsd = lpToken.balanceOf(myAddress) * lpTokenPriceUsd; 44 | ``` 45 | 46 | If LP tokens are staked, include staked balance: 47 | 48 | ```solidity 49 | myLpTokens = lpToken.balanceOf(myAddress) + lpStakingContract.balanceOf(myAddress); 50 | myLpTokenValueUsd = myLpTokens * lpTokenPriceUsd; 51 | ``` 52 | 53 | ## Example: Valuing `$BERA/$HONEY` LP Tokens 54 | 55 | Let's value LP tokens for a `$BERA/$HONEY` pool: 56 | 57 | | Step | Action | Result | 58 | | ---- | ------------------------ | ----------------------------------------------------------------- | 59 | | 1 | Query BEX | tokens = [`$BERA`, `$HONEY`], balances = [1000 BERA, 10000 HONEY] | 60 | | 2 | Fetch prices | prices = [$10 (BERA), $1 (HONEY)] | 61 | | 3 | Calculate pool value | poolValueUsd = (1000 _ $10) + (10000 _ $1) = $20,000 | 62 | | 4 | Get total LP supply | totalLpSupply = 1000 | 63 | | 5 | Calculate LP token price | lpTokenPriceUsd = $20,000 / 1000 = $20 | 64 | 65 | In this example, each LP token is worth $20. 66 | -------------------------------------------------------------------------------- /apps/bex/content/developers/contracts/relayers.md: -------------------------------------------------------------------------------- 1 | # Relayers 2 | 3 | Relayers are opt-in, audited contracts that can make calls to the vault on behalf of users. They can use the sender's ERC20 vault allowance, internal balance, or BPTs after being approved. 4 | 5 | ## Types of Relayers 6 | 7 | ### BalancerRelayer 8 | 9 | The BalancerRelayer allows users to execute multiple vault actions in a single transaction by chaining them together. This improves UX by reducing the number of transactions needed for complex operations. 10 | 11 | Example of chaining multiple actions: 12 | 13 | ```js 14 | // Approve relayer 15 | const approval = buildApproval(signature); 16 | 17 | // Chain exit pool and swap 18 | const exitPoolCallData = buildExitPool(poolId, bptAmount); 19 | const swapCallData = buildSwap(params); 20 | 21 | // Execute all actions in one transaction 22 | const tx = await relayer.multicall([approval, exitPoolCallData, swapCallData]); 23 | ``` 24 | 25 | ### PoolCreationHelper 26 | 27 | The PoolCreationHelper is a specialized relayer that simplifies pool creation and initial liquidity provision. See the [PoolCreationHelper](/developers/contracts/factory/pool-creation-helper) documentation for details. 28 | 29 | Key features: 30 | 31 | - Creates and joins pools in a single transaction 32 | - Supports joining WBERA pools with either WBERA or BERA 33 | - Handles both weighted and stable pool creation 34 | 35 | ## Approving a Relayer 36 | 37 | Before a relayer can act on your behalf, you must approve it using the Vault's `setRelayerApproval` function: 38 | 39 | ```solidity 40 | function setRelayerApproval( 41 | address sender, 42 | address relayer, 43 | bool approved 44 | ) external; 45 | ``` 46 | 47 | For example, to approve the PoolCreationHelper: 48 | 49 | ```js 50 | const vault = new ethers.Contract(VAULT_ADDRESS, vaultAbi, wallet); 51 | await vault.setRelayerApproval( 52 | wallet.address, // sender 53 | RELAYER_ADDRESS, // relayer 54 | true // approved 55 | ); 56 | ``` 57 | 58 | > Note: Only approve relayers that have been audited and are part of the official BEX deployment. 59 | -------------------------------------------------------------------------------- /apps/bex/content/developers/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Deployed Contracts 6 | - - meta 7 | - name: description 8 | content: Registry of deployed BEX contract addresses. 9 | - - meta 10 | - property: og:description 11 | content: Registry of deployed BEX contract addresses. 12 | --- 13 | 14 | 17 | 18 | # BEX Deployed Contracts 19 | 20 | :::warning ⚠️ Security Notice 21 | 22 | On January 21st, 2025, Balancer disclosed a long-standing vulnerability in their V2 Vault implementation. BEX incorporates contract logic from Balancer V2 and shares the same vulnerability. We advise users creating new pools to assess the vulnerability and exercise additional caution, particularly when including **untrusted or newly-created tokens**. 23 | 24 | **Funds currently deposited in BEX are safe, and no action from LPs is needed.** The issue only (potentially) affects tokens that are not live on-chain today. Frontend warnings are displayed on BEX for potentially vulnerable tokens. 25 | 26 | Future plans include integrating the Balancer V3 codebase, which mitigates this vulnerability and is cross-compatible with current BEX pools. 27 | 28 | For more information, see the [Balancer disclosure](https://forum.balancer.fi/t/balancer-v2-token-frontrun-vulnerability-disclosure/6309). 29 | ::: 30 | 31 | The following is a list of contract address in order to interact with Berachain BEX. 32 | 33 | > A full list of Contract ABIs can be found at https://github.com/berachain/doc-abis 34 | 35 | ## Mainnet Contracts 36 | 37 | 38 | 39 | 40 | 51 | 52 |
NameBepoliaABI
53 | 54 | ## Bepolia Testnet Contracts 55 | 56 | 57 | 58 | 59 | 70 | 71 |
NameBepoliaABI
72 | -------------------------------------------------------------------------------- /apps/bex/content/developers/sdk/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: BEX SDK Intro 6 | - - meta 7 | - name: description 8 | content: BEX SDK Intro 9 | - - meta 10 | - property: og:description 11 | content: BEX SDK Intro 12 | --- 13 | 14 | # Berancer SDK 15 | 16 | The Berancer SDK is a Typescript library for interfacing with the BEX protocol. This includes common contract interactions such as add/remove liquidity and swaps. The SDK is adapted from the [Balancer SDK](https://github.com/balancer/balancer-sdk). 17 | 18 | [![npm version](https://img.shields.io/npm/v/@berachain-foundation/berancer-sdk/latest.svg)](https://www.npmjs.com/package/@berachain-foundation/berancer-sdk/v/latest) 19 | 20 | ## Installation 21 | 22 | Install the package with 23 | 24 | ::: code-group 25 | 26 | ```bash [pnpm] 27 | pnpm add @berachain-foundation/berancer-sdk 28 | ``` 29 | 30 | ```bash [yarn] 31 | yarn add @berachain-foundation/berancer-sdk 32 | ``` 33 | 34 | ```bash [npm] 35 | npm install @berachain-foundation/berancer-sdk 36 | ``` 37 | 38 | ::: 39 | 40 | ## Guides and Examples 41 | 42 | For a detailed API reference, please see the [SDK API Reference](/developers/sdk/reference). 43 | 44 | The following SDK guides are available: 45 | 46 | - [Add Liquidity](/developers/sdk/add-liquidity) 47 | - [Remove Liquidity](/developers/sdk/remove-liquidity) 48 | - [Swap](/developers/sdk/swap) 49 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/amm.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: BEX AMM 6 | - - meta 7 | - name: description 8 | content: BEX uses an automated market maker (AMM) mechanism with flexible pool types to provide liquidity and enable token swaps 9 | - - meta 10 | - property: og:description 11 | content: BEX uses an automated market maker (AMM) mechanism with flexible pool types to provide liquidity and enable token swaps 12 | --- 13 | 14 | # Automated Market Makers (AMMs) 📈 15 | 16 | Liquidity in BEX is provided through an automated market maker (AMM) mechanism. Unlike traditional limit order books (LOBs), liquidity is not provided by individual orders but by an aggregate pool of liquidity with capital provided by liquidity providers (LPs). 17 | 18 | BEX supports multiple pool types, each designed for specific use cases: 19 | 20 | - **Weighted Pools**: Allow for pools with 2 or more tokens with customizable weights (e.g., 80/20 HONEY/WETH or 33/33/33 HONEY/WETH/WBTC) 21 | - **Stable Pools**: Optimized for tokens that trade at or near parity (e.g., stablecoins) or with predictable exchange rates 22 | 23 | ## Pool Architecture 24 | 25 | All BEX pools interact with the [Vault](/learn/concepts/vault), which manages token accounting while pools handle the swap math and logic. This separation enables: 26 | 27 | - Gas-efficient swaps through consolidated liquidity 28 | - Independent pool balances for security 29 | - Flexible pool designs for different use cases 30 | 31 | For detailed information about specific pool types, see: 32 | 33 | - [Weighted Pools](/learn/concepts/pools/weighted-pools) 34 | - [Stable Pools](/learn/concepts/pools/stable-pools) 35 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/flash-loans.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Flash Loans in BEX 6 | - - meta 7 | - name: description 8 | content: Understanding Flash Loans in the BEX Protocol 9 | - - meta 10 | - property: og:description 11 | content: Understanding Flash Loans in the BEX Protocol 12 | --- 13 | 14 | # Flash Loans 15 | 16 | :::warning 17 | Flash loans are currently disabled in BEX through protocol fees. This feature may be enabled in the future through governance. 18 | ::: 19 | 20 | ## What are Flash Loans? 21 | 22 | Flash loans are a DeFi primitive that allows users to borrow any amount of assets without providing collateral, as long as the loan is repaid within the same transaction. 23 | 24 | ## Future Availability 25 | 26 | While flash loans technically exist in the current implementation, their use is rendered impractical due to a high fee setting. The ability to enable flash loans in the future lies with BEX governance. 27 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/governance.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: BEX Governance 6 | - - meta 7 | - name: description 8 | content: Understanding the governance structure and roles in BEX Protocol 9 | - - meta 10 | - property: og:description 11 | content: Understanding the governance structure and roles in BEX Protocol 12 | --- 13 | 14 | # Governance 15 | 16 | BEX's governance system allows BGT holders to participate in protocol decision-making, with voting power proportional to their holdings. Governance is responsible for steering the protocol's future direction and overseeing its development. No changes to core protocol features can be made without governance approval. 17 | 18 | ## Governance Responsibilities 19 | 20 | Governance is responsible for making strategic decisions about the protocol's development and operation. This includes setting protocol fees and their distribution, approving protocol upgrades, managing key parameters, and steering the long-term direction of the protocol. All major protocol changes must go through governance approval before implementation. 21 | 22 | ## Protocol Roles 23 | 24 | ### Manager Role 25 | 26 | The manager role is designed for handling time-sensitive protocol operations that require immediate action. This includes the ability to execute emergency measures like pausing pools or the vault in case of detected issues. The manager can also adjust operational parameters and implement decisions that have been approved through governance, ensuring the protocol can respond quickly to immediate needs while still operating within governance-approved boundaries. 27 | 28 | ### Authorizer Role 29 | 30 | The authorizer serves as BEX's permission management interface, acting as a bridge between governance decisions and their implementation. It maintains protocol security by controlling access to protocol functions and ensuring all operations pass proper permission checks. The authorizer works alongside the governance timelock system to maintain secure and controlled access to protocol functionality. 31 | 32 | ### Coordinator Role 33 | 34 | The coordinator plays a vital role in the execution phase of governance, handling the process of implementing protocol changes. They manage staged governance actions and control the timing of execution, ensuring that changes occur in the correct sequence and with appropriate delays. The coordinator verifies that each change is completed successfully and has the authority to handle emergency cancellations if issues arise during implementation. 35 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/pools/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Pools 6 | - - meta 7 | - name: description 8 | content: BEX pools contain the logic and math for swapping tokens and for liquidity operations 9 | - - meta 10 | - property: og:description 11 | content: BEX pools contain the logic and math for swapping tokens and for liquidity operations 12 | --- 13 | 14 | # Pools 15 | 16 | BEX pools contain the logic and math for swapping tokens and for liquidity operations. There are several types of pools, each with its own unique characteristics and use cases. 17 | 18 | ## Pool Types 19 | 20 | - [**Weighted Pools**](/learn/concepts/pools/weighted-pools): pools with custom weights for each token, generally for uncorrelated assets 21 | - [**Stable Pools**](/learn/concepts/pools/stable-pools): pools for pegged tokens (e.g. to USD) or correlated tokens with a known exchange rate 22 | 23 | ## Pool Differences 24 | 25 | ### Pool Math 26 | 27 | - **Weighted Pools** use constant product formulas (similar to Uniswap V2) and allow for custom weight distributions between tokens 28 | - **Stable Pools** use specialized stable swap curves optimized for tokens that should trade near parity 29 | 30 | ### Key Parameters 31 | 32 | - **Weighted Pools** are configured primarily through token weights (e.g., `80/20`, `50/25/25`) 33 | - **Stable Pools** use an amplification coefficient to determine how tightly the prices should be bound together 34 | 35 | ### Use Cases 36 | 37 | - **Weighted Pools**: Best for uncorrelated assets where price divergence is expected (e.g., `HONEY/WETH`) 38 | - **Stable Pools**: Ideal for correlated assets like: 39 | - Stablecoins (`USDC/USDT/DAI`) 40 | - Wrapped/underlying tokens (`iBERA/BERA`) 41 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/pools/stable-pools.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Stable Pools 6 | - - meta 7 | - name: description 8 | content: Stable Pools are optimized for assets expected to trade at or near parity, or at a predictable exchange rate 9 | - property: og:description 10 | content: Stable Pools are optimized for assets expected to trade at or near parity, or at a predictable exchange rate 11 | --- 12 | 13 | # Stable Pools 14 | 15 | Stable Pools are optimized for assets expected to trade at or near parity, or at a predictable exchange rate. The stable swap algorithm that is employed provides swaps with minimal price impact, enhancing capital efficiency for correlated assets. 16 | 17 | ## Use Cases 18 | 19 | - **Pegged Tokens**: Assets trading near 1:1, such as stablecoins of the same currency (e.g. DAI, USDC, USDT) or synthetic assets (e.g., wrapped versions of BTC) 20 | - **Correlated Tokens**: Assets trading at slowly changing ratios, like certain derivatives (e.g. wstETH, WETH) 21 | 22 | ## Composability 23 | 24 | Stable Pools on BEX are composable with other pool types. That is, Stable Pool LP tokens can be "nested" into other pools, and swaps on that pool would route through the the underlying Stable Pool liquidity. This facilitates deeper liquidity and improved pricing. 25 | 26 | As an example: 27 | 28 | - There is Stable Pool with `[HONEY, USDC and DAI]` 29 | - A user creates a [Weighted Pool](/learn/concepts/pools/weighted-pools) pairing `WETH` against the `[HONEY, USDC and DAI]` pool 30 | 31 | This results in deeper liquidity, and eliminates the need to pair `WETH` against the individual stablecoins in separate pools. 32 | 33 | ## Technical Parameters 34 | 35 | ### Amplification Coefficient 36 | 37 | The amplification coefficient controls how tightly the pool maintains price parity between tokens. It has a minimum value of `1` and a maximum value of `5000`. 38 | 39 | - **Lower Amplification**: More price flexibility, allowing for wider price swings 40 | - **Higher Amplification**: More price stability, reducing price swings 41 | 42 | ### Rate Providers 43 | 44 | For tokens that should trade at non-1:1 ratios (e.g. `iBERA/BERA` or appreciating ERC4626 tokens), rate providers can provide the expected exchange rate between assets. The inclusion of a rate provider results in a Metastable Pool. 45 | 46 | ## Pre-minting 47 | 48 | To facilitate gas efficiency, an effectively infinite amount of LP tokens (`2**111`) are minted at the time of pool creation and held in the [Vault](/learn/concepts/vault) (and distributed to liquidity providers). 49 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/pools/weighted-pools.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Weighted Pools 6 | - - meta 7 | - name: description 8 | content: Pools with custom weights for each token, generally for uncorrelated assets 9 | - - meta 10 | - property: og:description 11 | content: Pools with custom weights for each token, generally for uncorrelated assets 12 | --- 13 | 14 | # Weighted Pools 15 | 16 | Weighted Pools are an extension of traditional AMM pools (i.e. Uniswap V2's 50/50 `x = y * k` pools). Weighted Pools are suitable for very generalized use cases, particularly for pairs of tokens without price correlation (e.g., `HONEY/WETH`). BEX Weighted Pools allow users to create pools with multiple tokens and custom weight distributions, such as `80/20` or `60/20/20` ratios. 17 | 18 | Following is an example with three tokens: 19 | 20 | | Token | Weight | 21 | | ----- | ------ | 22 | | HONEY | 40% | 23 | | WETH | 30% | 24 | | WBTC | 30% | 25 | 26 | ## Key Benefits 27 | 28 | ### Flexible Exposure Management 29 | 30 | Weighted Pools empower pool-creators to fine-tune exposure to different assets when providing liquidity. The weighting of a token in a pool influences its susceptibility to impermanent loss during price fluctuations. For instance, in a WBERA/WETH pool, weights control the exposure profile to each asset: 31 | 32 | Higher WBERA weight (e.g. `80/20 WBERA:WETH`) means that the liquidity providers are more exposed to WBERA price movements, but it would require a larger amount of WBERA to change the relative price of the two assets in the pool. Conversely, equal weights suggest that the assets are expected to maintain relative value long-term. 33 | 34 | ### Impermanent Loss Mitigation 35 | 36 | Impermanent loss refers to the value difference between holding assets outright and providing liquidity for those assets. 37 | 38 | Pools with asymmetric token weights experience reduced impermanent loss, though this comes with a trade-off: swaps between assets in this pool will have higher price slippage due to one side having less liquidity. 39 | -------------------------------------------------------------------------------- /apps/bex/content/learn/concepts/vault.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Vault 6 | - - meta 7 | - name: description 8 | content: The Vault is a smart contract that holds and manages all tokens in each BEX pool. It is also the portal through which most BEX operations take place 9 | - - meta 10 | - property: og:description 11 | content: The Vault is a smart contract that holds and manages all tokens in each BEX pool. It is also the portal through which most BEX operations take place 12 | --- 13 | 14 | # Vault 15 | 16 | The Vault contract is a central component of BEX (not to be confused with Reward Vaults in Proof-of-Liquidity), acting as a unified smart contract that manages all tokens across liquidity pools. It serves as the primary interface for most protocol operations, including swaps, joins, and exits. 17 | 18 | ## Separating Token Accounting and Pool Logic 19 | 20 | BEX's Vault and Pool architecture separates the token accounting and management from the pool logic and AMM math . The responsibility for calculating amounts for swaps, joins and exits is delegated to the pool contracts, while the Vault holds all of the tokens within the various pools (which can even be of different types!). 21 | 22 | ![BEX Vault](/assets/vault.png) 23 | 24 | As a simplified example, a swap transaction might involve the following steps: 25 | 26 | 1. A user sends a swap request to the Vault, specifying the poolId to swap through, and the amount to swap 27 | 2. The Vault looks up the pool contract for the specified poolId 28 | 3. The pool contract calculates the balance changes from the swap, returning those amounts to the Vault 29 | 4. The Vault updates the token balances in the Vault based on the pool contract's calculations, and sends the output tokens to the user 30 | 31 | The Vault is designed to keep pool balances strictly independent. This is critical for maintaining a permissionless system where tokens and pools can be created. Even though the Vault holds consolidated balances, the pool contracts are responsible for managing the balances within their pools. That is, the depth of combined liquidity does not change the price impact of individual pools. 32 | 33 | ## Gas Efficient Swaps 34 | 35 | Storing all tokens in the same Vault contract confers greater gas efficiency. For example, in the case of a multi-hop swap (a trade routing through multiple pools), there is no need to transfer tokens at each step. Rather, the Vault keeps track of net balance changes and sends only what is needed at the end, saving on gas costs. 36 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/add-token.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Add Token Metadata 6 | - - meta 7 | - name: description 8 | content: Learn how to add token information to the BEX. 9 | - - meta 10 | - property: og:description 11 | content: Learn how to add token information to the BEX. 12 | --- 13 | 14 | # Add Token Metadata 15 | 16 | Token metadata is maintained on a Berachain token list. 17 | This list is used to update formation such as: 18 | 19 | - Token Logo 20 | - Coingecko ID 21 | - Price Feeds 22 | - Tags 23 | 24 | A team may submit a pull request to the [Metadata](https://github.com/berachain/metadata) repository to update these values. 25 | dApps utilizing the token list, such as BEX, will be able to show your token's information and logo. 26 | 27 | Please make sure to over the [Metadata CONTRIBUTING.md](https://github.com/berachain/metadata/blob/main/CONTRIBUTING.md) for the full details on contributing. 28 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/fees.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Fees 6 | - - meta 7 | - name: description 8 | content: Learn how to execute transactions on BEX without the need for gas, using EIP-712 off-chain signing and relayer tips. 9 | - - meta 10 | - property: og:description 11 | content: Learn how to execute transactions on BEX without the need for gas, using EIP-712 off-chain signing and relayer tips. 12 | --- 13 | 14 | # Fees 15 | 16 | Fees are collected on every trade conducted on BEX. A portion of these fees will go to 1) liquidity providers (LPs), and 2) BGT holders. 17 | 18 | ### Fee Distribution 19 | 20 | Trading fees for LPs are directly compounded inside the pool such that LPs don't need to perform a separate claim transaction. For example, if token prices within an LP's pool are unchanged between deposit and withdrawal, but there have been trades in the interim, the LP will see a higher balance upon withdrawal due to the accumulation of fees. 21 | 22 | The portion of fees going to LPs is set at the time of pool creation, starting from 0.01% for stable pools, and ranging up to 0.3%, 0.5%, and 1% for weighted pools. The lower fee tiers are generally more appropriate for stable pairings (e.g. stablecoins and blue-chip assets), while the higher fee tiers may be more appropriate for exotic assets. 23 | 24 | Trading fees in BEX are split 50/50 between LPs and the protocol. Protocol fees are collected in the ProtocolFeesCollector contract, where the fees are auctioned for `$HONEY` and subsequently distributed to `$BGT` stakers. 25 | 26 | ![BEX Fees](/assets/swap_fee.png) 27 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/liquidity/intro.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: LP Positions 6 | - - meta 7 | - name: description 8 | content: Learn how to provide liquidity on BEX, including minting and managing LP positions, and understanding the concept of impermanent loss. 9 | - - meta 10 | - property: og:description 11 | content: Learn how to provide liquidity on BEX, including minting and managing LP positions, and understanding the concept of impermanent loss. 12 | --- 13 | 14 | 17 | 18 | # Liquidity Provision 19 | 20 | Users can provide liquidity to BEX by committing tokens to a specific pool. _Liquidity providers_ (LPs) earn a yield on their capital generated by the swap fees paid into the pool. In return for these fees and other potential benefits, LPs must deal with the fact that the collateral they deposit is not fixed. LP positions continuously rebalance between the two tokens in the pair as swaps occur in the pool. 21 | 22 | This rebalancing can impose a cost on LPs in the form of _impermanent loss_ (IL), which is the difference between the value of the rebalanced position and an equivalent static portfolio of the two assets. The larger the price ratio of the assets in the pool moves from when the user first deposited, the larger the IL cost experienced by the LP. 23 | 24 | LPs on BEX provide full-range liquidity, meaning that users' liquidity is always active at every possible price point in the pool. 25 | 26 | ![BEX pools](/assets/all_pools.png) 27 | 28 | ### Adding Liquidity 29 | 30 | _Adding Liquidity_ is the process of providing the two constituent tokens of a liquidity pool to either 1) create a new LP position, or 2) commit additional capital to a pre-existing LP position. 31 | 32 | ![Adding Liquidity](/assets/add_liquidity.png) 33 | 34 | When adding liquidity to an LP position, users have the following parameters to choose from: 35 | 36 | - The token pair to provide liquidity for 37 | - Deposit quantity, which can be fixed in terms of either side of the pair 38 | - Maximum slippage (only applies when providing unbalanced amounts that require rebalancing) and transaction deadline 39 | 40 | ### Managing LP Positions 41 | 42 | Users can view their existing LP positions through BEX on BEX. 43 | ![Manage Liquidity](/assets/manage_lp.png) 44 | 45 | To remove liquidity from a specific position, users can withdraw their LP tokens. This removes the liquidity from the pool and returns the underlying collateral (based on the current token prices) to the user. 46 | 47 | ![Withdraw Liquidity](/assets/withdraw_lp.png) 48 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/liquidity/pol.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Proof of Liquidity and BEX 6 | - - meta 7 | - name: description 8 | content: How to use BEX liquidity in Proof of Liquidity 9 | - - meta 10 | - property: og:description 11 | content: How to use BEX liquidity in Proof of Liquidity 12 | --- 13 | 14 | 17 | 18 | # Proof of Liquidity 19 | 20 | Proof of liquidity (PoL) is a mechanism that rewards users for their liquidity contributions to the Berachain ecosystem through native chain rewards, `$BGT`. As the native dApp powering trading liquidity in the Berachain ecosystem, a number of BEX pools will be eligible for `$BGT` rewards. 21 | 22 | ## Earning $BGT 23 | 24 | 25 | 26 | The process for earning `$BGT` through BEX involves three simple steps: 27 | 28 | 1. **Provide Liquidity**: First, deposit liquidity into your chosen BEX pool 29 | 30 | 2. **Stake LP Tokens in Reward Vault**: After providing liquidity, you'll receive LP tokens. Stake these tokens in the pool's staking contract 31 | 32 | You can view and manage your staked positions in the reward vaults here: 33 | {{config.mainnet.dapps.hub.url}}vault 34 | 35 | ## Whitelisting Pools for PoL Rewards 36 | 37 | If you are a project that uses BEX for your tokens' liquidity, you can apply to have your pool(s) whitelisted for `$BGT` rewards. This process is conducted through Berachain governance, requiring a proposal to be submitted and voted on by `$BGT` holders. More information will be provided on how to submit a proposal for whitelisting in the near future. 38 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/pool-creation.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Initializing Pools 6 | - - meta 7 | - name: description 8 | content: Learn how to create new liquidity pools on BEX. 9 | - - meta 10 | - property: og:description 11 | content: Learn how to create new liquidity pools on BEX. 12 | --- 13 | 14 | 17 | 18 | # Initializing Pools 19 | 20 | On BEX, any user can initialize a liquidity pool for an arbitrary pair of tokens. The user who initializes the pool has the ability to select the starting price ratio between the two tokens. 21 | 22 | Users can create new BEX liquidity pools here: {{config.mainnet.dapps.bex.url}}/pools/create 23 | 24 | To prevent spam and ensure the creation of meaningful pools, BEX requires users to permanently burn a small, economically insignificant quantity of both tokens when initializing a new pool. 25 | 26 | ## Pool Initialization Steps 27 | 28 | 1. Navigate to the "Pool" section of the BEX app and select "Create a Pool" 29 | 2. Select the two tokens you wish to create a pool for 30 | 3. Specify the pool fees, collected on each swap 31 | 4. Set initial pool token ratios and amount of liquidity to add 32 | 5. Confirm the pool creation transaction 33 | 34 | ![BEX Pool Creation](/assets/create_pool_stable.png) 35 | 36 | ## Selecting the Ratio 37 | 38 | During pool creation, the price/ratio of the tokens is set based on amount of "quote" tokens per "base" token. Using the above scenario as an example, and assuming that the price of `$WETH` is $3000, the initial price of `$HONEY`is set from the initial`3000` ratio, that is: 39 | 40 | - Each `$WETH` is worth `3000` `$HONEY` 41 | - Each `$HONEY` is worth `0.000333` `$WETH` 42 | - The initial price of `$HONEY` is `$3000 * 0.000333 = $1` 43 | 44 | If there is a known price to both tokens, pool creators should endeavour to set the initial price ratio to match the known prices. If the price ratio is set too high or too low, arbitrageurs will quickly correct the price to match the market. 45 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/pool-creation/stable_pool.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Stable Pools 6 | - - meta 7 | - name: description 8 | content: Learn how to create and manage stable pools on BEX 9 | - - meta 10 | - property: og:description 11 | content: Learn how to create and manage stable pools on BEX 12 | --- 13 | 14 | 17 | 18 | # Stable Pools 19 | 20 | Stable pools are designed specifically for tokens that are expected to maintain similar prices (like stablecoins or different versions of the same asset). These pools use specialized math to provide much better pricing and lower slippage than weighted pools when trading between assets of similar value. 21 | 22 | ## When to Use Stable Pools 23 | 24 | Ideal use cases for stable pools include: 25 | 26 | - Stablecoin pairs (USDC/USDT/DAI) 27 | - Liquid staking tokens (stETH/ETH) 28 | - Synthetic/wrapped asset pairs (WBTC/renBTC) 29 | 30 | ## Creating a Stable Pool 31 | 32 | ### 1. Select Pool Type 33 | 34 | From the pool creation interface, select "Stable" as your pool type. This type is specifically optimized for tokens that maintain similar prices. 35 | 36 | ### 2. Choose Tokens 37 | 38 | Select the tokens you want to include in your stable pool. Remember: 39 | 40 | - All tokens should have similar prices 41 | - Maximum of 5 tokens per stable pool 42 | - All tokens must have the same decimals 43 | 44 | ![Stable Pool Token Selection](/assets/stable_select_tokens.png) 45 | 46 | ### 3. Set Initial Liquidity 47 | 48 | Provide the initial liquidity amounts for each token. For stable pools, it's recommended to: 49 | 50 | - Add similar amounts of each token 51 | - Ensure proper price alignment 52 | - Consider market demand 53 | 54 | ![Set Initial Liquidity](/assets/stable_set_liquidity.png) 55 | 56 | If the values are significantly different, you may see an error warning about price impact: 57 | 58 | ![Liquidity Error Warning](/assets/stable_set_liq_error.png) 59 | 60 | ### 4. Set Pool Parameters 61 | 62 | Configure your pool settings: 63 | 64 | - **Swap Fee**: Choose between 0.01% to 0.1% (lower fees are typical for stable pools) 65 | - **Amplification Parameter**: Determines how stable the pool remains around the ideal price 66 | - Higher values (100-5000) = better price stability but lower flexibility 67 | - Lower values (20-100) = more flexibility but potentially higher slippage 68 | 69 | ## Best Practices 70 | 71 | 1. **Initial Liquidity**: Start with balanced amounts of each token to ensure proper price stability 72 | 2. **Fee Selection**: Use lower fees (0.01%-0.04%) for highly stable pairs 73 | 3. **Monitoring**: Regularly check that token prices remain aligned 74 | 4. **Amplification**: Start with standard values (100-200) and adjust based on observed trading patterns 75 | 76 | ## Important Notes 77 | 78 | - Stable pools are not suitable for tokens with different decimals or expected price variations 79 | - Adding tokens with significantly different values can lead to poor trading performance 80 | - The amplification parameter cannot be changed after pool creation 81 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/pool-creation/weighted_composable.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Weighted Composable Pools 6 | - - meta 7 | - name: description 8 | content: Learn how to create and manage weighted composable pools on BEX 9 | - - meta 10 | - property: og:description 11 | content: Learn how to create and manage weighted composable pools on BEX 12 | --- 13 | 14 | 17 | 18 | # Weighted Composable Pools 19 | 20 | Weighted composable pools are the most flexible pool type on BEX, allowing you to create pools with up to 8 different tokens. These pools enable you to create custom token indexes or manage diversified portfolios with precise weight allocations. 21 | 22 | ## Creating a Weighted Pool 23 | 24 | ### 1. Select Pool Type 25 | 26 | From the pool creation interface, select "Weighted" as your pool type. This allows you to: 27 | 28 | - Add up to 8 different tokens 29 | - Set custom weights for each token 30 | - Choose from multiple fee tiers 31 | 32 | ![Weighted Pool Creation](/assets/weighted_pool.png) 33 | 34 | ### 2. Set Initial Liquidity 35 | 36 | For each token in your pool: 37 | 38 | - Input the desired token amounts 39 | - Balance the values according to your target weights 40 | - Review USD values to ensure proper ratios 41 | 42 | ![Initial Liquidity](/assets/weighted_intial_liquidity.png) 43 | 44 | ### 3. Configure Pool Settings 45 | 46 | #### Swap Fees 47 | 48 | Choose between three fee tiers: 49 | 50 | - 0.3%: Standard fee for most token pairs 51 | - 0.5%: Medium fee for less liquid tokens 52 | - 1.0%: High fee for exotic tokens or volatile pairs 53 | 54 | An additional 0.1% protocol fee is automatically added to each swap and directed to BGT stakers. 55 | 56 | #### Pool Name and Symbol 57 | 58 | - Pool Name: Automatically generated based on included tokens 59 | - Pool Symbol: Generated with weights (e.g., "33WBERA-33STGUSDC-33WETH-WEIGHTED") 60 | 61 | ## Best Practices 62 | 63 | 1. **Token Selection** 64 | 65 | - Include tokens with reliable price feeds 66 | - Consider market liquidity of each token 67 | - Ensure complementary token relationships 68 | 69 | 2. **Weight Distribution** 70 | 71 | - Align weights with your investment strategy 72 | - Consider market capitalization 73 | - Account for token volatility 74 | 75 | 3. **Fee Selection** 76 | - Higher fees (1%) for volatile or low-liquidity tokens 77 | - Lower fees (0.3%) for stable or high-volume pairs 78 | - Medium fees (0.5%) for balanced risk/reward 79 | 80 | ## Important Notes 81 | 82 | - Pool parameters cannot be changed after creation 83 | - Initial liquidity should be proportional to weights 84 | - Consider gas costs when adding multiple tokens 85 | - Monitor pool performance after launch for potential rebalancing needs 86 | -------------------------------------------------------------------------------- /apps/bex/content/learn/guides/swaps.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Swaps 6 | - - meta 7 | - name: description 8 | content: Learn about swapping tokens on BEX, including single-hop and multi-hop swaps, and intermediate tokens. 9 | - - meta 10 | - property: og:description 11 | content: Learn about swapping tokens on BEX, including single-hop and multi-hop swaps, and intermediate tokens. 12 | --- 13 | 14 | 17 | 18 | # Swaps 19 | 20 | The core functionality of BEX is to allow users to exchange one type of token for another. If liquidity exists for a given pair in the DEX contract, users will be able to swap between tokens. The BEX web app provides an interface for general-purpose swaps. 21 | 22 | ![BEX Swaps Modal](/assets/swap_route.png) 23 | 24 | ## Single-Hop and Multi-Hop Swaps 25 | 26 | If adequate liquidity exists in a given pair, a swap will most likely be executed as a _single hop_. Single-hop swaps incur less exchange and gas fees, making them the preferred method. 27 | 28 | However, When a trade between the input and output token does not provide the best overall price (or the trading pair does not exist as a single pool), BEX can perform a _multi-hop swap_. Multi-hop swaps involve chaining swaps across multiple pools to find the best overall price. The process of finding a cost-efficient multi-hop path is called _routing_. 29 | 30 | ### Intermediate Tokens 31 | 32 | In a multi-hop swap, _intermediate tokens_ are the tokens held temporarily when swapping through a sequence of pairs. Intermediate tokens in BEX are never transferred because settlement occurs based on the net debit against the entire BEX protocol. 33 | 34 | You can see an example of a multi-hop swap here in this screenshot(circled in red): 35 | 36 | ![BEX Swaps Modal](/assets/route.png) 37 | 38 | ## Swap Parameters 39 | 40 | When initiating a swap, users can define the following parameters: 41 | 42 | - **Quantity**: The amount of tokens to swap, which can be specified as either a fixed input quantity or a fixed output quantity. 43 | - **Slippage**: The maximum acceptable difference between the expected and actual price of the trade. Slippage is expressed as a percentage and represents the worst-case price impact the user is willing to accept. If the actual price impact exceeds this threshold, the swap transaction will revert. Slippage can be specified by selecting the gear icon on the swap page: 44 | ![BEX Swaps Modal](/assets/swap_slippage.png) 45 | -------------------------------------------------------------------------------- /apps/bex/content/learn/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: What is BEX? 6 | - - meta 7 | - name: description 8 | content: BEX is a fork of Balancer V2, enabling efficient trading and liquidity provision on Berachain 9 | - - meta 10 | - property: og:description 11 | content: BEX is a fork of Balancer V2, enabling efficient trading and liquidity provision on Berachain 12 | --- 13 | 14 | 17 | 18 | # What is BEX? 19 | 20 | :::warning ⚠️ Security Notice 21 | 22 | On January 21st, 2025, Balancer disclosed a long-standing vulnerability in their V2 Vault implementation. BEX incorporates contract logic from Balancer V2 and shares the same vulnerability. We advise users creating new pools to assess the vulnerability and exercise additional caution, particularly when including **untrusted or newly-created tokens**. 23 | 24 | **Funds currently deposited in BEX are safe, and no action from LPs is needed.** The issue only (potentially) affects tokens that are not live on-chain today. Frontend warnings are displayed on BEX for potentially vulnerable tokens. 25 | 26 | Future plans include integrating the Balancer V3 codebase, which mitigates this vulnerability and is cross-compatible with current BEX pools. 27 | 28 | For more information, see the [Balancer disclosure](https://forum.balancer.fi/t/balancer-v2-token-frontrun-vulnerability-disclosure/6309). 29 | ::: 30 | 31 | BEX is the native decentralized exchange (DEX) protocol of Berachain, built as a fork of Balancer V2. BEX enables trading between any combination of tokens through weighted and stable pools. 32 | 33 | ![BEX All Pools](/assets/all_pools.png) 34 | 35 | > BEX can be accessed on {{config.mainnet.chainName}} here: {{config.mainnet.dapps.bex.url}} 36 | 37 | ## How BEX Works 38 | 39 | BEX uses an AMM model where traditional order book markets are replaced with liquidity pools. Users can create and provide liquidity to two types of pools: 40 | 41 | - Weighted pools with up to 8 tokens and customizable weights 42 | - Stable pools optimized for tokens of similar value 43 | 44 | BEX is run entirely within a single smart contract, making BEX extremely efficient and lightweight. The design of BEX is inspired by the innovations pioneered by [Balancer](https://balancer.fi/). 45 | ![Add Liquidity Interface](/assets/add_liquidity.png) 46 | 47 | ## Key Features 48 | 49 | BEX's architecture choices provide several core advantages: 50 | 51 | - Accommodates traditional full-range liquidity pools (i.e., "Uniswap V2 style"), providing a simple and efficient trading experience 52 | - Supports custom weights such as 80/20 for customized exposure 53 | - Supports stable swap curves for trading pegged assets 54 | - Unified vault architecture increases capital efficiency and gas costs 55 | -------------------------------------------------------------------------------- /apps/bex/content/public/DocsBear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/DocsBear.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/BEND.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/BEND.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/BERA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/BERA.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/BERPS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/BERPS.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/add_liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/add_liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/adding-liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/adding-liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/all_pools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/all_pools.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/beraswap-pools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/beraswap-pools.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-add-liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-add-liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-fees.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-fees.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-gauge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-gauge.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-pools.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-pools.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-set-prices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-set-prices.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-slippage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-slippage.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-splash.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex-swap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex-swap.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bex_swap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bex_swap.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/bgthub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/bgthub.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/create_pool_stable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/create_pool_stable.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/dapp-honeyswap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/dapp-honeyswap.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /apps/bex/content/public/assets/lp_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/lp_1.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/lp_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/lp_4.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/manage_lp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/manage_lp.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/pool_stake_pol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/pool_stake_pol.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/reward_vaults.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/reward_vaults.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/route.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/route.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/stable_select_tokens.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/stable_select_tokens.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/stable_set_liq_error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/stable_set_liq_error.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/stable_set_liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/stable_set_liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/stake_reward_vault.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/stake_reward_vault.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/swap_fee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/swap_fee.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/swap_route.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/swap_route.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/swap_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/swap_settings.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/swap_slippage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/swap_slippage.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/usercmd-input.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/usercmd-input.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/vault.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/vault.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/videos/lpandstake.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/videos/lpandstake.mp4 -------------------------------------------------------------------------------- /apps/bex/content/public/assets/weighted_intial_liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/weighted_intial_liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/weighted_pool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/weighted_pool.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/weighted_set_liquidity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/weighted_set_liquidity.png -------------------------------------------------------------------------------- /apps/bex/content/public/assets/withdraw_lp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/assets/withdraw_lp.png -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Bold.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-BoldItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLight.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Italic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Light.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-LightItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Medium.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-MediumItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Thin.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ThinItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Bold.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-BoldItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLight.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Italic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Light.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-LightItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Medium.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-MediumItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Regular.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBold.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Thin.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ThinItalic.ttf -------------------------------------------------------------------------------- /apps/bex/content/public/previewDocs.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/previewDocs.jpg -------------------------------------------------------------------------------- /apps/bex/content/public/weighted_pool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/bex/content/public/weighted_pool.png -------------------------------------------------------------------------------- /apps/bex/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@berachain/bex", 3 | "version": "1.1.5", 4 | "scripts": { 5 | "dev": "vitepress dev --port 5174", 6 | "build": "vitepress build", 7 | "preview": "vitepress preview", 8 | "clean": "rm -rf .turbo; rm -rf .vitepress/cache; rm -rf .vitepress/dist; rm -rf node_modules;", 9 | "format": "prettier . --write" 10 | }, 11 | "dependencies": { 12 | "@berachain/config": "workspace:^", 13 | "@berachain/ui": "workspace:^", 14 | "@heroicons/vue": "^2.0.18", 15 | "@mdit/plugin-figure": "^0.4.8", 16 | "@mdit/plugin-tab": "^0.4.8", 17 | "@rive-app/canvas": "^2.2.0", 18 | "@tabler/icons-vue": "^3.7.0", 19 | "@vercel/toolbar": "^0.1.30", 20 | "@vueuse/core": "^10.4.1", 21 | "markdown-it-conditional-render": "^0.1.0", 22 | "markdown-it-mathjax3": "^4.3.2", 23 | "vitepress": "^1.2.3", 24 | "vue": "^3.3.4" 25 | }, 26 | "devDependencies": { 27 | "@types/node": "^20.5.9", 28 | "prettier": "^2.8.8" 29 | }, 30 | "type": "module" 31 | } 32 | -------------------------------------------------------------------------------- /apps/core/.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | cache 3 | .turbo 4 | public 5 | package.json 6 | node_modules 7 | CHANGELOG.md -------------------------------------------------------------------------------- /apps/core/.vitepress/theme/index.ts: -------------------------------------------------------------------------------- 1 | // Imports 2 | // ======================================================== 3 | // https://vitepress.dev/guide/custom-theme 4 | import { h } from "vue"; 5 | import DefaultTheme from "vitepress/theme"; 6 | import Fidget from "@berachain/ui/Fidget"; 7 | import "@berachain/ui/style"; 8 | 9 | // Theme Configuration 10 | // ======================================================== 11 | export default { 12 | extends: DefaultTheme, 13 | Layout: () => { 14 | return h(DefaultTheme.Layout, null, { 15 | "sidebar-nav-after": () => h(Fidget), 16 | }); 17 | }, 18 | enhanceApp({ app, router, siteData }) { 19 | // Extended here 20 | }, 21 | }; 22 | -------------------------------------------------------------------------------- /apps/core/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @berachain/core 2 | 3 | ## 2.1.0 4 | 5 | ### Minor Changes 6 | 7 | - Update contract interfaces and migration guide 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @berachain/config@1.2.0 13 | 14 | ## 2.0.1 15 | 16 | ### Patch Changes 17 | 18 | - Update on validator system requirements 19 | - Update incentives logic 20 | 21 | ## 2.0.0 22 | 23 | ### Major Changes 24 | 25 | - Fix BGT fee sources in faq 26 | 27 | ## 1.3.9 28 | 29 | ### Patch Changes 30 | 31 | - Revised homepages to remove sidebar and emphasize other docs 32 | - Updated dependencies 33 | - @berachain/ui@1.1.1 34 | 35 | ## 1.3.8 36 | 37 | ### Patch Changes 38 | 39 | - Added Alchemy RPC, Binance Web3 Wallet, & Keplr Wallet 40 | 41 | ## 1.3.7 42 | 43 | ### Patch Changes 44 | 45 | - Node Quickstart Tip For Non-MacOS Sed Commands 46 | 47 | ## 1.3.6 48 | 49 | ### Patch Changes 50 | 51 | - Adjusted bash cat command for correct directory for running node 52 | 53 | ## 1.3.5 54 | 55 | ### Patch Changes 56 | 57 | - New RPC Validation Cloud Added 58 | 59 | ## 1.3.4 60 | 61 | ### Patch Changes 62 | 63 | - Typo correction for Berachain 64 | 65 | ## 1.3.3 66 | 67 | ### Patch Changes 68 | 69 | - Minor FAQ fixes 70 | 71 | ## 1.3.2 72 | 73 | ### Patch Changes 74 | 75 | - # Minor FAQ fixes 76 | - Developer Tools Envio as RPC and Indexer 77 | 78 | ## 1.3.1 79 | 80 | ### Patch Changes 81 | 82 | - Update URLs and examples used for snapshots 83 | 84 | ## 1.3.0 85 | 86 | ### Minor Changes 87 | 88 | - 921566f: adding governance docs 89 | 90 | ### Patch Changes 91 | 92 | - Replace mentions of Cosmos with CometBFT 93 | - bbfa6ee: add detail to reward vault section 94 | 95 | ## 1.2.1 96 | 97 | ### Patch Changes 98 | 99 | - Updated dependencies 100 | - @berachain/ui@1.1.0 101 | 102 | ## 1.2.0 103 | 104 | ### Minor Changes 105 | 106 | - New Node Snapshot Guide 107 | 108 | ## 1.1.8 109 | 110 | ### Patch Changes 111 | 112 | - Updated dependencies 113 | - @berachain/config@1.1.1 114 | 115 | ## 1.1.7 116 | 117 | ### Patch Changes 118 | 119 | - Add Chronicle to Oracles list 120 | 121 | ## 1.1.6 122 | 123 | ### Patch Changes 124 | 125 | - Add GoldRush (by Covalent) link to Developer Tools 126 | 127 | ## 1.1.5 128 | 129 | ### Patch Changes 130 | 131 | - 3b1e7d1: small edits for clarity 132 | 133 | ## 1.1.4 134 | 135 | ### Patch Changes 136 | 137 | - new questions in PoL FAQ 138 | 139 | ## 1.1.3 140 | 141 | ### Patch Changes 142 | 143 | - Clarification on priv_validator_key 144 | 145 | ## 1.1.2 146 | 147 | ### Patch Changes 148 | 149 | - Typo fixes 150 | 151 | ## 1.1.1 152 | 153 | ### Patch Changes 154 | 155 | - Updated dependencies 156 | - @berachain/ui@1.0.1 157 | 158 | ## 1.1.0 159 | 160 | ### Minor Changes 161 | 162 | - Updated constants variables 163 | 164 | ## 1.0.1 165 | 166 | ### Patch Changes 167 | 168 | - Updated dependencies [c7a86e4] 169 | - @berachain/config@1.1.0 170 | 171 | ## 1.0.0 172 | 173 | ### Major Changes 174 | 175 | - Initial versions for bend, berps, bex, and core 176 | 177 | ## 0.0.1 178 | 179 | ### Patch Changes 180 | 181 | - Updated dependencies 182 | - @berachain/config@1.0.0 183 | - @berachain/ui@1.0.0 184 | -------------------------------------------------------------------------------- /apps/core/content/beacon-kit/api.md: -------------------------------------------------------------------------------- 1 | # Beacon Kit API Reference 2 | 3 | ## Beacon Chain JSON-RPC 4 | 5 | ## Node API 6 | 7 | The Node API is default closed. To open it, revise your installation's `app.toml` and review the section `beacon-kit.node-api`. 8 | 9 | ### /eth/v1/node/version 10 | 11 | Returns node version information. 12 | 13 | ### /eth/v2/debug/beacon/states/:state_id 14 | 15 | Returns a quantity of debug information, including: 16 | 17 | - validator root 18 | - latest beacon and execution chain block headers 19 | - various root hahes 20 | - the node's understanding of the validator set voting power, slashing status 21 | -------------------------------------------------------------------------------- /apps/core/content/developers/contracts/wbera-token.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # WBERA 6 | 7 | > {{config.mainnet.contracts.wbera.address}} | ABI JSON 8 | 9 | **Inherits:** [Solady WETH](https://github.com/vectorized/solady/blob/main/src/tokens/WETH.sol) 10 | 11 | ## Functions 12 | 13 | ### deposit 14 | 15 | ```solidity 16 | function deposit() external payable; 17 | ``` 18 | 19 | ### withdraw 20 | 21 | ```solidity 22 | function withdraw(uint256) external; 23 | ``` 24 | 25 | ### name 26 | 27 | ```solidity 28 | function name() public pure override returns (string memory); 29 | ``` 30 | 31 | ### symbol 32 | 33 | ```solidity 34 | function symbol() public pure override returns (string memory); 35 | ``` 36 | 37 | ### decimals 38 | 39 | Returns the number of decimals used to get its user representation. 40 | 41 | For example, if `decimals` equals `2`, a balance of `505` tokens should 42 | be displayed to a user as `5,05` (`505 / 10 ** 2`). 43 | 44 | ```solidity 45 | function decimals() public view returns (uint8); 46 | ``` 47 | 48 | ### totalSupply 49 | 50 | Returns the amount of tokens in existence. 51 | 52 | ```solidity 53 | function totalSupply() public view override returns (uint256); 54 | ``` 55 | 56 | ### balanceOf 57 | 58 | Returns the amount of tokens owned by `owner`. 59 | 60 | ```solidity 61 | function balanceOf(address account) public view override returns (uint256); 62 | ``` 63 | 64 | ### transfer 65 | 66 | Transfer `amount` tokens from the caller to `to`. 67 | 68 | - the caller must have a balance of at least `amount` 69 | 70 | ```solidity 71 | function transfer(address recipient, uint256 amount) public virtual override returns (bool); 72 | ``` 73 | 74 | ### allowance 75 | 76 | Returns the amount of tokens that `spender` can spend on behalf of `owner`. 77 | 78 | ```solidity 79 | function allowance(address owner, address spender) public view virtual override returns (uint256); 80 | ``` 81 | 82 | ### approve 83 | 84 | Sets `amount` as the allowance of `spender` over the caller's tokens. 85 | 86 | ```solidity 87 | function approve(address spender, uint256 amount) public virtual override returns (bool); 88 | ``` 89 | 90 | ### transferFrom 91 | 92 | Transfers `amount` tokens from `from` to `to`. 93 | 94 | - `sender` must have a balance of at least `amount` 95 | - the caller must have allowance for `sender`'s tokens of at least 96 | `amount` 97 | 98 | ```solidity 99 | function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool); 100 | ``` 101 | -------------------------------------------------------------------------------- /apps/core/content/developers/index.md: -------------------------------------------------------------------------------- 1 | # Proof of Liquidity Overview 2 | 3 | Berachain's Proof of Liquidity (PoL) mechanism can be broken down into two broad categories: 4 | 5 | 1. [**BGT Distribution**](#bgt-distribution): How $BGT is created from the block production process 6 | 2. [**Incentive Marketplace**](#incentive-marketplace): How protocols compete for validator $BGT allocations by issuing incentives 7 | 8 | ## BGT Distribution 9 | 10 | As discussed in [Block Rewards](/learn/pol/blockrewards), $BGT emissions stem from the block production process. The variable component of $BGT emissions per block is determined by the proposing validator's $BGT delegation (also referred to as "boost"). 11 | 12 | ### Distributor 13 | 14 | The [Distributor](/developers/contracts/distributor) contract is the entry point for BGT distribution. The `distributeFor()` function accepts a Merkle proof that a validator has proposed a certain beacon block. The Distributor then: 15 | 16 | - Receives newly minted $BGT from the `BlockRewardController` 17 | - Processes rewards based on validator-specified allocations via `BeraChef` 18 | - Distributes $BGT to the validator's designated Reward Vaults - defined by the Reward Allocation 19 | - Distributes Validator commission of Incentives received for distributing $BGT emissions 20 | - Distirbutes remaining Incentives to `BGTIncentiveDistributor` for Validator Boosters to claim 21 | 22 | ### BlockRewardController 23 | 24 | The [BlockRewardController](/developers/contracts/block-reward-controller) contract is the only entity authorized to mint $BGT. It is entered through the `processRewards` function from the `Distributor` contract. The BlockRewardController then: 25 | 26 | - Mints a base $BGT amount to the proposing validator's operator 27 | - Mints a variable $BGT amount based on the validator's boost which is sent to the `Distributor` 28 | 29 | ### BeraChef 30 | 31 | The [BeraChef](/developers/contracts/berachef) contract manages validator Reward Allocations. These preferences are set by the validator operator and can be updated following a short delay. The BeraChef contract then forwards these allocations to the `Distributor` contract for distribution to specified Reward Vaults. 32 | 33 | ## Incentive Marketplace 34 | 35 | The Incentive Marketplace creates a market-driven liquidity incentive system where protocols compete for validators' $BGT allocations. 36 | 37 | ### RewardVault 38 | 39 | [RewardVaults](/developers/contracts/reward-vault) act as the core PoL integration point. They: 40 | 41 | - Receive $BGT emissions from the `Distributor` 42 | - Allow protocols to add Incentive Tokens with a minimum incentive rate per 1 $BGT emitted 43 | - Manage token staking and $BGT distribution to liquidity providers/users 44 | 45 | Validators are incentivized to allocate $BGT to vaults offering higher protocol incentives, as they receive these rewards proportionally to the $BGT allocated. This creates the "marketplace" dynamic where protocols compete by offering better incentives to attract more $BGT allocations. 46 | 47 | ::: tip 48 | RewardVault creation is permissionless, but vaults must be approved (whitelisted) by [governance](/learn/governance/rewardvault) to be included in validators' reward allocations. 49 | ::: 50 | 51 | The [RewardVaultFactory](/developers/contracts/reward-vault-factory) contract deploys standardized RewardVault contracts and maintains a registry of approved vaults. 52 | -------------------------------------------------------------------------------- /apps/core/content/learn/berachain-nfts.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain NFT Collections 6 | - - meta 7 | - name: description 8 | content: Overview of the official Berachain NFT collections 9 | - - meta 10 | - property: og:description 11 | content: Overview of the official Berachain NFT collections 12 | --- 13 | 14 | 17 | 18 | # Berachain NFTs 19 | 20 | Berachain's journey began rather unconventionally. What started as a bear-themed NFT project in 2021 eventually evolved into a novel blockchain pioneering Proof-of-Liquidity, thanks in part to the strong builder community rallying around the NFTs. 21 | 22 | ## Official Collections 23 | 24 | There are six NFT collections that form Berachain's official NFTs. Each collection builds upon previous ones through a rebasing mechanism whereby holders of all previous collections are rewarded NFTs from subsequent collections. For example, a **Bong Bear** (the original collection) holder would receive 1 **Bond Bear**, and subsequently 2 **Boo Bears** for holding the first two collections. 25 | 26 | Following are OpenSea links to each collection, in the order they were released: 27 | 28 | - [Bong Bears](https://opensea.io/collection/bongbears) 29 | - [Bond Bears](https://opensea.io/collection/bond-bears) 30 | - [Boo Bears](https://opensea.io/collection/boo-bears) 31 | - [Baby Bears](https://opensea.io/collection/the-baby-bears) 32 | - [Band Bears](https://opensea.io/collection/the-band-bears) 33 | - [Bit Bears](https://opensea.io/collection/berachain-bit-bears) 34 | 35 | See the [deployed contracts](/developers/deployed-contracts) for the relevant addresses on both Ethereum and Berachain. 36 | 37 | ## Bridge Your Bears 38 | 39 | All six official collections can be bridged from Ethereum to Berachain using the Berachain NFT bridge. Bridging is necessary for holders to claim the [airdrop](/learn/claim-bera-airdrop). 40 | 41 | 42 | 43 | ![Bera NFT Bridge](/assets/nft-bridge.png) 44 | 45 | 46 | 47 | > {{config.mainnet.dapps.nftBridge.url}} 48 | -------------------------------------------------------------------------------- /apps/core/content/learn/claim-bera-airdrop.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Claim $BERA Airdrop 6 | - - meta 7 | - name: description 8 | content: Learn how to check $BERA airdrop and claim 9 | - property: og:description 10 | content: Learn how to check $BERA airdrop and claim 11 | --- 12 | 13 | 16 | 17 | # $BERA Airdrop 🐻 18 | 19 | For any questions or discussion about the Berachain claim, please visit the [Berachain Discord](https://discord.com/invite/berachain). 20 | 21 | The BERA airdrop checker will be live on **February 5th**, and the airdrop will be live on **February 6th**. 22 | 23 | Ensure you check your allocation only on **{{config.websites.checker.url}}**. 24 | 25 | Ensure you claim tokens only on **{{config.websites.claim.url}}**. 26 | 27 | ![Bera Airdrop Checker](/assets/berachain-airdrop.jpg) 28 | 29 | ## Check $BERA Airdrop 🔍 30 | 31 | The airdrop checker is a tool that lets you learn your allocation on launch day. Your genesis allocation from testnet use, testnet user RFA allocations, and ecosystem NFTs is already in your wallet. 32 | 33 | You can check your allocations in two ways: 34 | 35 | - Enter your address 36 | - Connect relevant socials 37 | 38 | You will be able to see your tokens available to claim at launch. 39 | 40 | The checker reads NFT token allocations from official Bera NFTs on Ethereum mainnet. Recipients of the social airdrop and RFB must use social login, then tie their allocations to a wallet. RFB and social airdrop claims will be distributed on Feb 10th. 41 | 42 | ## Claim $BERA Airdrop 🎁 43 | 44 | The airdrop claim is a tool that allows you to accept your tokens. Claim your tokens by following the steps below: 45 | 46 | 1. Connect to **{{config.websites.claim.url}}** 47 | 48 | 2. Click "Claim" and approve the proposed transaction 49 | 50 | 3. Your claim is complete and should be available in your wallet on the Berachain network 51 | -------------------------------------------------------------------------------- /apps/core/content/learn/dapps/berahub.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain's BeraHub 6 | - - meta 7 | - name: description 8 | content: Berachain's BeraHub is the place to manage all things $BGT 9 | - - meta 10 | - property: og:description 11 | content: Berachain's BeraHub is the place to manage all things $BGT 12 | --- 13 | 14 | 17 | 18 | # Berachain's BeraHub 🐻⛓️ 19 | 20 | BeraHub is the place to manage all things `$BGT` and access Berachain liquidity through BEX. 21 | 22 | 23 | 24 | ![Berachain BeraHub dApp](/assets/berahub.png) 25 | 26 | 27 | 28 | > {{config.mainnet.dapps.hub.url}} 29 | 30 | On BeraHub, users can: 31 | 32 | 1. Review active Reward Vaults 33 | 2. Review active Validators 34 | 3. Boost validators with `$BGT` 35 | 4. Redeem `$BGT` for `$BERA` 36 | 5. Claim earned `$BGT` rewards 37 | 6. Swap assets 38 | 7. Provide BEX liquidity 39 | 8. Participate in Governance 40 | -------------------------------------------------------------------------------- /apps/core/content/learn/dapps/beratrail.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain Beratrail 6 | - - meta 7 | - name: description 8 | content: Berachain Beratrail is a native block explorer 9 | - - meta 10 | - property: og:description 11 | content: Berachain Beratrail is a native block explorer 12 | --- 13 | 14 | 17 | 18 | # Beratrail Block Explorer 🐻⛓️ 19 | 20 | 21 | 22 | ![Berachain Beratrail Block Explorer dApp](/assets/dapp-beratrail.png) 23 | 24 | 25 | 26 | > {{config.mainnet.dapps.berascan.url}} 27 | 28 | Beratrail is one of Berachain's main block explorers that allows for easy reviewing of transactions, contracts, wallets, code, contract interactions, and contract verification. 29 | -------------------------------------------------------------------------------- /apps/core/content/learn/dapps/bex.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain BEX 6 | - - meta 7 | - name: description 8 | content: Berachain BEX is a native decentralized exchange 9 | - - meta 10 | - property: og:description 11 | content: Berachain BEX is a native decentralized exchange 12 | --- 13 | 14 | 17 | 18 | # Berachain BEX 🐻⛓️ 19 | 20 | Berachain's native decentralized exchange (DEX), BEX, allows trading of any arbitrary pair of crypto assets via swapping and providing liquidity into [liquidity pools](/learn/help/glossary#liquidity-pool). 21 | 22 | 23 | 24 | ![Berachain BEX Native dApp](/assets/bex-dapp.png) 25 | 26 | 27 | 28 | > {{config.mainnet.dapps.bex.url}} 29 | 30 | Pool deposits in BEX can become eligible for [$BGT](/learn/pol/tokens/bgt) emissions and incentivization by whitelisting associated [Reward Vaults](/learn/pol/rewardvaults) via governance. 31 | 32 | > To learn more, check out the {{config.websites.docsBex.name}}. 33 | 34 | ## Default Reward Allocation 35 | 36 | Each validator can customize how their rewards are distributed across different reward vaults. If no custom allocation is set, default allocations are used, benefitting key BEX liquidity pools. The default allocation is as follows: 37 | 38 | | Pool assets | Type | Weights | Allocation | Fee | Amplification | 39 | | --------------------- | -------- | ------- | ----------- | ----- | ------------- | 40 | | BERA - HONEY | Weighted | 50-50 | 35.00% | 0.30% | n.a. | 41 | | BERA - WETH | Weighted | 50-50 | 25.00% | 0.30% | n.a. | 42 | | BERA - WBTC | Weighted | 50-50 | 25.00% | 0.30% | n.a. | 43 | | USDC - HONEY | Stable | 50-50 | 7.50% | 0.01% | 2000 | 44 | | BYUSD (pyUSD) - HONEY | Stable | 50-50 | 7.50% | 0.01% | 1000 | 45 | | **Total** | | | **100.00%** | | | 46 | -------------------------------------------------------------------------------- /apps/core/content/learn/dapps/honey-swap.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain Honey Swap 6 | - - meta 7 | - name: description 8 | content: Berachain Honey Swap allows for $HONEY distribution 9 | - - meta 10 | - property: og:description 11 | content: Berachain Honey Swap allows for $HONEY distribution 12 | --- 13 | 14 | 17 | 18 | # Berachain Honey Swap 🐻⛓️ 19 | 20 | Honey Swap allows users to trade approved stables and assets for [$HONEY](https://docs.berachain.com/learn/pol/tokens/honey). 21 | 22 | Learn more about the mechanics of [$HONEY](/learn/pol/tokens/honey). 23 | 24 | 25 | 26 | ![Berachain Honey Swap dApp](/assets/honey_swap.png) 27 | 28 | 29 | 30 | > {{config.mainnet.dapps.honeySwap.url}} 31 | -------------------------------------------------------------------------------- /apps/core/content/learn/governance/rewardvault.md: -------------------------------------------------------------------------------- 1 | # Reward Vault Governance 2 | 3 | While creating a [Reward Vault](/learn/pol/rewardvaults) is permissionless, they must be whitelisted through governance proposals to receive `$BGT` emissions from validators. This process ensures community oversight and alignment over projects joining the Proof-of-Liquidity (PoL) ecosystem. 4 | 5 | ## Request for Reward Vault 6 | 7 | :::tip Submission Process 8 | The Reward Vault whitelisting process involves 1) submitting a **Request for Reward Vault** (RFRV) form **AND** 2) posting on the [Governance Forum](https://hub.forum.berachain.com/c/reward-vaults/6). 9 | ::: 10 | There are two types of RFRVs - ensure you complete the appropriate form based on your use case: **BEX Pool RFRVs** (For token pairs trading on BEX) and **General (non-BEX) RFRVs** (For other protocol integrations). 11 | 12 | ### 1. BEX Pool RFRVs ([Form](https://tinyurl.com/bdebbjkb)) 13 | 14 | **Requirements:** 15 | 16 | - Pool must be live on BEX 17 | - Incentive tokens must be active on BEX pool 18 | - Recommended to pair with major tokens (BERA, HONEY, BYUSD, USDC, wETH, wBTC) 19 | - Demonstrate economic value through TVL or trading volume 20 | - Meet security and decentralization criteria 21 | - Full requirements [here](https://docs.google.com/document/d/1SMYK0SUsVUUSxXTssMkCb_QPHyVMNQh5Juf_rGXO8xM/edit?tab=t.0) 22 | 23 | ### 2. General (non-BEX) RFRVs ([Form](https://tinyurl.com/3kzv8de7)) 24 | 25 | **Requirements:** 26 | 27 | - Contract must be deployed and live 28 | - Incentive tokens must be live 29 | - Demonstrate economic value and ecosystem synergy 30 | - Meet security and decentralization criteria 31 | - Full requirements [here](https://docs.google.com/document/d/1gM7KmSK5QJ2jB2m6WvcXhrLYCd-cQDiRNM9s8vLzEaI/edit?tab=t.0) 32 | 33 | Proposals are reviewed weekly (deadline Thursday 00:00 UTC) by the BGT Foundation and Guardians. 34 | 35 | For technical implementation details of Reward Vaults, please see the [developer documentation](/developers/contracts/reward-vault). 36 | -------------------------------------------------------------------------------- /apps/core/content/learn/guides/add-incentives-for-reward-vault.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # Add Incentives For Reward Vault 6 | 7 | The following guide will walk you through the process of adding Incentives to existing Berachain Whitelisted Reward Vault with a Whitelisted Incentive Token. If you'd like to understand additional mechanics, see the [Incentives](/learn/pol/incentives) section for more detials. 8 | 9 | ## Requirements 10 | 11 | - Whitelisted Reward Vault with Whitelisted Incentive Token 12 | - Must be connected with [Token Manager](/learn/pol/incentives#incentive-token-managers) wallet 13 | 14 | ## How To Add Incentives To A Reward Vault 15 | 16 | This will walk you through the process of adding Incentive Tokens to a Whitelisted Reward Vault through {{config.mainnet.dapps.hub.name}}. 17 | 18 | ### Step 1 - Choose Your Reward Vault 19 | 20 | Under the **Vaults** section, find and click your Reward Vault. 21 | 22 | ![Find Reward Vault in Vault Section](/assets/add-incentives-vaults.png) 23 | 24 | ### Step 2 - Add Incentive 25 | 26 | If the wallet you are connected as is the Incentive Token Manager, then you will see a section labeled "Add incentive to this reward vault". 27 | Click the **Add** button. 28 | 29 | ![Add Incentive sTo Reward Vault](/assets/add-incentives-reward-vault.png) 30 | 31 | A modal will appear, with the Incentive Tokens that your account manages. 32 | Choose the **Incentive Token**, specify an **Amount** you would like to supply, and a rate for the **Distribution Per BGT** you would like to offer. 33 | 34 | ![Add Incentives Reward Vault Modal](/assets/add-incentives-reward-vault-modal.png) 35 | 36 | Go through the process of approving the tokens and confirming the supply. 37 | 38 | ![Add Incentives Success](/assets/add-incentives-reward-vault-success.png) 39 | 40 | Once complete, you should the newly reflected Incentive Tokens offered in the **Incentives** section. 41 | 42 | ![New Incentives Added To Reward Vault](/assets/add-incentives-reward-vault-added.png) 43 | -------------------------------------------------------------------------------- /apps/core/content/learn/guides/boost-a-validator.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # Boost A Validator With $BGT 6 | 7 | The following guide will walk you through the process of boosting a Validator with $BGT to become eligible to claim any Incentives a Validator is rewarded by directing $BGT emissions to Reward Vaults. 8 | 9 | ## Requiments 10 | 11 | - A wallet that has accumulated $BGT 12 | 13 | ## How To Boost A Validator With $BGT 14 | 15 | This will walk you through the process of boosting a Berachain Validator through {{config.mainnet.dapps.hub.name}}. 16 | 17 | ### Step 1 - Choose A Validator 18 | 19 | On the **Validators** page, choose a validator you would to boost. 20 | 21 | ![Berachain Hub Validators](/assets/boost-validator-validators.png) 22 | 23 | ### Step 2 - Queue Boost 24 | 25 | In order to Boost a Validator, the Boost must first be queued before it can be activated. 26 | 27 | Under the **Your Boosts** section click the **Boost** button. 28 | 29 | ![Validators](/assets/boost-validator-validator.png) 30 | 31 | Specify an amount of $BGT to Boost the Validator with and click **Queue Boost**. 32 | You will need to wait a certain period of time before you can active the Boost. 33 | 34 | ![Validator Queue Boost](/assets/boost-validator-queue-boost.png) 35 | 36 | ### Step 3 - Activate Boost 37 | 38 | Lastly, when the Boost queue is complete, click the **Activate** button to Boost the Validator. 39 | -------------------------------------------------------------------------------- /apps/core/content/learn/guides/claim-incentives.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # Claim Incentives 6 | 7 | The following guide will walk you through the process of claiming Incentives from Validators that a user has Boosted and has received Incentive Tokens for directing $BGT emissions to Reward Vaults. 8 | 9 | ## Requirements 10 | 11 | - An account that has Boosted a Validator with $BGT 12 | - A Validator that has received and shared Incentive Tokens 13 | 14 | ## How To Claim Incentive Tokens 15 | 16 | This will walk you through the process of claiming Incentives through {{config.mainnet.dapps.hub.name}}. 17 | 18 | ### Step 1 - Find Portfolio 19 | 20 | On main {{config.mainnet.dapps.hub.name}}, in the top right section click **Portfolio**. 21 | 22 | ![Berachain Hub](/assets/claim-incentives-hub.png) 23 | 24 | This will bring you to a page with all possible Incentive Tokens to claim. 25 | 26 | ### Step 2 - Claim Incentives 27 | 28 | You have the choice to claim individual Incentives or multiple, depending on how many Incentive Tokens are available. 29 | 30 | ![Berachain Hub Portfolio](/assets/claim-incentives-portfolio.png) 31 | 32 | If there are multiple claims, a modal may appear to go through a process of claiming multiple batches. 33 | 34 | Click the **Claim Period** button to claim multiple Incentive Tokens. 35 | 36 | ![Berachain Hub Claim Modal](/assets/claim-incentives-claim-modal.png) 37 | 38 | Check back on this page every 24 hours to see the latest Incentive Tokens that are eligible to claim. 39 | -------------------------------------------------------------------------------- /apps/core/content/learn/guides/safe-add-incentives-for-reward-vault.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # Add Incentives For Reward Vault 6 | 7 | The following guide will walk you through the process of adding incentives to an existing Berachain whitelisted reward vault with a whitelisted incentive token. If you'd like to understand additional mechanics, see the [Incentives](/learn/pol/incentives) section for more details. 8 | 9 | ## Requirements 10 | 11 | - Whitelisted Reward Vault with Whitelisted Incentive Token 12 | - Token Manager [Safe Multisig Wallet](https://safe.berachain.com) 13 | 14 | ## How To Add Incentives To A Reward Vault 15 | 16 | This guide will walk you through the process of adding incentive tokens to a whitelisted reward vault using {{config.mainnet.dapps.safe.name}}. 17 | 18 | ### Step 1 - Start a New Transaction 19 | 20 | Click the button **New transaction** in the top left from the homepage. 21 | 22 | ![Start a New Transaction](/assets/new-transaction.png) 23 | 24 | ### Step 2 - Add the Reward Vault Address 25 | 26 | Add the Reward Vault address into the input and click **Use Implementation ABI**. 27 | 28 | ![Add Address](/assets/add-address.png) 29 | 30 | ### Step 3 - Provide Add Incentive Inputs 31 | 32 | Select `addIncentive` from the drop down. Add the incentive token address, the amount, and the reward rate. 33 | The amount and reward rate should be provided in wei. 34 | 35 | For example, to add 100 WBERA at a rate of 0.7 WBERA per BGT: 36 | 37 | | Parameter | Value | 38 | | -------------- | ------------------------------------------ | 39 | | Token | 0x6969696969696969696969696969696969696969 | 40 | | Amount | 100000000000000000000 | 41 | | Incentive Rate | 700000000000000000 | 42 | 43 | :::tip 44 | Your reward vault will need to be whitelisted before any `addIncentive` calls can be made. 45 | ::: 46 | 47 | ![Add Incentives Params](/assets/add-incentive-params.png) 48 | 49 | Once the inputs are supplied, click **Add transaction**. Then click **Create Batch** on the right. 50 | 51 | ### Step 4 - Submit and Execute the Transaction 52 | 53 | Send the batch to prepare to execute the transaction. 54 | 55 | ![Send Batch](/assets/send-batch.png) 56 | 57 | Depending on your SAFE configuration you may only be able to sign the transaction. 58 | If you are the last required signer you may execute the transaction. 59 | 60 | ![Execute Transaction](/assets/execute-transaction.png) 61 | -------------------------------------------------------------------------------- /apps/core/content/learn/how-to-get-bera.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: How To Get $BERA 6 | - - meta 7 | - name: description 8 | content: Learn how to get $BERA for Berachain 9 | - property: og:description 10 | content: Learn how to get $BERA for Berachain 11 | --- 12 | 13 | 16 | 17 | # How To Get $BERA 🐻 18 | 19 | `$BERA` is the network token used to pay for transactions on Berachain. This article describes several ways for users to obtain `$BERA` to participate in the network. 20 | 21 | Learn more about the [BERA Token](/learn/pol/tokens/bera). 22 | 23 | ## Bridging 🤝 24 | 25 | Bridging services enable users to transfer tokens from one blockchain to another. The canonical bridge to Berachain is the [Berachain Bridge](https://bridge.berachain.com/), powered by LayerZero. Several source chains support bridging to Berachain. 26 | 27 | When using the bridge, users have the option to exchange tokens for a small amount of `$BERA` at their destination. 28 | 29 | ![Berachain Bridging](/assets/bera-bridge.png) 30 | 31 | ## Exchanges 32 | 33 | Several centralized exchanges have listed `$BERA`. Users can trade other assets for `$BERA` on these platforms and then bridge them to Berachain. 34 | -------------------------------------------------------------------------------- /apps/core/content/learn/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: What is Berachain? 6 | - - meta 7 | - name: description 8 | content: Berachain Is a High-Performance EVM-Compatible Blockchain Built on Proof-of-Liquidity Consensus 9 | - - meta 10 | - property: og:description 11 | content: Berachain Is a High-Performance EVM-Identical Blockchain Built on Proof-of-Liquidity and Supported by the BeaconKit Framework. 12 | --- 13 | 14 | 17 | 18 | # What is Berachain? :bear::chains: 19 | 20 | 21 | 22 | ![Berachain.com](/assets/berachaindotcom.png) 23 | 24 | 25 | 26 | Berachain is a high-performance [EVM-Identical](#berachain-evm-identical-⟠) Layer 1 blockchain utilizing [Proof-of-Liquidity](#proof-of-liquidity-🤝) (PoL) and built on top of the modular EVM-focused consensus client framework [BeaconKit](#beaconkit-⛵✨). 27 | 28 | ## EVM Identical ⟠ 29 | 30 | Berachain's execution layer is identical to the Ethereum Virtual Machine (EVM) runtime environment seen on Ethereum Mainnet. This means that it uses existing unmodified [execution clients](/learn/help/glossary#execution-client) like Geth, Reth, Erigon, Nethermind, and more to handle executing smart contracts and supports all the tooling that comes native with the EVM. 31 | 32 | Identical means that whenever the EVM is upgraded, Berachain can adopt the latest version—for example, Dencun—straight out of the box. This includes compatibility with all RPC namespaces and endpoints, and any improvements made to execution clients can be applied immediately to Berachain. 33 | 34 | ## Proof-of-Liquidity 🤝 35 | 36 | Proof-of-Liquidity radically changes the way L1 economics are structured, prioritizing users 37 | and applications over validator rewards at baseline. Network incentives go towards enriching ecosystem liquidity, contributing to efficient trading, price stability, securing the chain, and increasing network/user growth. 38 | 39 | PoL strongly aligns the incentives of [network participants](/learn/pol/participants) (validators, protocols, users) and contributes to the overall long-term health of the chain. 40 | 41 | Beyond providing seamless day-one utility, the native dApps, such as [BEX](/learn/dapps/bex), serve as reference implementations of how developers can build on top of Proof-of-Liquidity. 42 | 43 | Read more in [What Is Proof-of-Liquidity](/learn/what-is-proof-of-liquidity). 44 | 45 | ## BeaconKit ⛵✨ 46 | 47 | BeaconKit is a modular framework developed by Berachain for building EVM [consensus clients](/learn/help/glossary#consensus-client). It integrates the benefits of CometBFT consensus, including increased composability, [single slot finality (SSF)](https://ethereum.org/en/roadmap/single-slot-finality/), and more. 48 | 49 | Read more in [What Is BeaconKit](/learn/what-is-beaconkit). 50 | -------------------------------------------------------------------------------- /apps/core/content/learn/pol/changelog.md: -------------------------------------------------------------------------------- 1 | # Proof of Liquidity Updates 2 | 3 | ### 2025-MAY 4 | 5 | The [Claim API](/developers/claim-api) is now released. 6 | 7 | ### 2025-APR-24 8 | 9 | 1. New Maximum of 3 incentives per reward vault 10 | 2. Block Reward Emissions have been modified in line with the targeted inflation rate of 10%. Updated constants are found on-chain via [BlockRewardController](https://berascan.com/address/0x1AE7dD7AE06F6C58B4524d9c1f816094B1bcCD8e) and described in [Block Rewards](/learn/pol/blockrewards). 11 | 3. Auto-Incentivizer: fees from default cutting board BEX Reward Vaults will use the fees to automatically offer incentives. 12 | 13 | ![Berachain Auto-Incentivizer](/assets/auto-incentivizer.png) 14 | 15 | ### 2025-APR-18 16 | 17 | Reward Allocations limit any one reward vault to 30% share of emissions. 18 | 19 | ### 2025-JAN-20 20 | 21 | We launched Proof of Liquidity 1.0 with public release of the [Honey Paper](https://honeypaper.berachain.com/) and Berachain Mainnet. 22 | -------------------------------------------------------------------------------- /apps/core/content/learn/pol/participants.md: -------------------------------------------------------------------------------- 1 | 4 | 5 | # Proof-of-Liquidity Participants 👥 6 | 7 | This article explores the different players in the Proof-of-Liquidity (PoL) ecosystem and their roles. The following diagram shows a breakdown of the different participants and their priorities/responsibilities: 8 | 9 | ![PoL Stakeholders](/assets/val-stakeholder-overview.png) 10 | 11 | ## Validators ✅ 12 | 13 | The active set of validators consists of the top **{{ config.mainnet.validatorActiveSetSize }} validators** ordered by BERA staked. Being part of the active set entitles validators to earn block rewards, so a key priority for validators is to obtain sufficient `$BERA` stake to be in the active set. Validators earn through three primary means: 14 | 15 | 1. Gas fees and priority fees 16 | 2. Collecting incentives provided by protocols for directing BGT rewards to their [Reward Vaults](/learn/pol/rewardvaults) 17 | 3. A base block reward (in `$BGT`) for successfully proposing a block 18 | 19 | ### Validator Incentives 💎 20 | 21 | When a validator directs `$BGT` emissions to a reward vault, they receive project-supplied [Incentives](/learn/pol/incentives) provided to attract these emissions (thus increasing the attractiveness of depositing into that project). These Incentives can be in the form of the protocol's native token or any other whitelisted ERC20 token. 22 | 23 | Successful validators in PoL optimize for: 24 | 25 | - Securing `$BGT` delegation to increase their block rewards 26 | - Efficiently exchanging `$BGT` block rewards for protocol incentives 27 | - Distributing value back to their `$BGT` delegators 28 | 29 | ## BGT Holders & Farmers 🥕 30 | 31 | BGT holders play a crucial role in: 32 | 33 | - Voting on governance proposals 34 | - Influencing economic incentives through `$BGT` delegation 35 | - Supplying ecosystem liquidity in reward vaults to earn `$BGT` 36 | 37 | ::: tip 38 | $BGT that is delegated to validators is not subject to slashing. Only validators' $BERA stakes can be slashed. 39 | ::: 40 | 41 | ### Earning and Delegating $BGT ⬇️ 42 | 43 | Users can earn `$BGT` by staking PoL-eligible receipt tokens in reward vaults. These receipt tokens are generated by performing actions that benefit the Berachain ecosystem, such as providing liquidity to a BEX pool. 44 | 45 | When selecting a validator to delegate `$BGT` to, users typically consider: 46 | 47 | - Which reward vaults validators direct emissions to 48 | - Validator commission rates and incentive distribution strategies 49 | - Validator uptime and performance 50 | 51 | The primary goal is to earn as many Incentives as possible through delegation. 52 | 53 | ## Ecosystem Projects 🧸 54 | 55 | Projects participate in PoL by: 56 | 57 | 1. Creating a reward vault through the factory contract 58 | 2. Submitting a governance proposal to whitelist the vault 59 | 3. Supplying incentive tokens and managing rates in their vault 60 | 61 | The [Incentives marketplace](/learn/pol/incentives) allows protocols to bid for validators' emissions using whitelisted tokens, creating alignment between all stakeholders to increase the overall value of the network. Projects must also gain the favor of `$BGT` holders to enter into the PoL system. 62 | -------------------------------------------------------------------------------- /apps/core/content/learn/pol/tokens/bera.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: BERA Token 6 | - - meta 7 | - name: description 8 | content: What Is the BERA Token & How Does It Work 9 | - - meta 10 | - property: og:description 11 | content: What Is the BERA Token & How Does It Work 12 | --- 13 | 14 | 18 | 19 | # $BERA 20 | 21 | `$WBERA`: {{config.mainnet.contracts.wbera.address}} 22 | 23 | 24 | 25 | 26 | 27 | `$BERA` serves as the native gas and staking token of Berachain, the first blockchain powered by Proof-of-Liquidity. 28 | 29 | ## Role of BERA 30 | 31 | The `$BERA` token serves two main purposes on the Berachain network: 32 | 33 | ### Transaction Fees 34 | 35 | `$BERA` is used to pay for transactions on the Berachain network (hence its designation as the "gas token"). Tokens used for transaction fees are burned, removing them from the circulating supply. 36 | 37 | ### Validator Staking 38 | 39 | Validators stake `$BERA` to operate a validator. Within the active set, the more `$BERA` a validator has staked, the more frequently they are chosen to propose blocks. A validator's probability of block production is directly proportional to their share of the total staked `$BERA`. The economic value of all staked `$BERA` tokens forms the economic security of the chain, with [$BGT](/learn/pol/tokens/bgt) dynamics controlling its inflation. 40 | 41 | To learn more about how `$BERA` staking affects block production and emissions, see [Block Rewards](/learn/pol/blockrewards.md). 42 | -------------------------------------------------------------------------------- /apps/core/content/learn/pol/vaults.md: -------------------------------------------------------------------------------- 1 | # Reward Vaults 2 | 3 | Reward Vaults are smart contracts where users can stake their Proof-of-Liquidity (PoL) eligible assets to receive `$BGT` rewards. Reward Vaults are the only way to earn `$BGT` rewards, which serve as the basic building blocks of the PoL ecosystem. 4 | 5 | ![Reward Vaults](/assets/reward-vaults.png) 6 | 7 | ## User Interactions 8 | 9 | The amount of `$BGT` rewards a user earns from Reward Vaults depends on: 10 | 11 | 1. The user's share of total assets staked in the vault 12 | 2. The amount of `$BGT` rewards emitted to the vault 13 | 14 | After staking assets in a Reward Vault, users can claim earned rewards as soon as they are distributed, add to their existing deposits, or withdraw their assets at any time. 15 | 16 | `$BGT` farming with Reward Vaults resembles familiar DeFi actions, providing a low barrier to entry for regular users. 17 | 18 | ## How $BGT Ends up in Reward Vaults 19 | 20 | Validators direct portions of their `$BGT` emissions to specific Reward Vaults. 21 | 22 | To understand why validators choose to emit `$BGT` to particular Reward Vaults, refer to [Incentives in PoL](/learn/pol/incentives), which explains how protocols can influence validator behavior with economic incentives. 23 | 24 | ## Creation of New Reward Vaults 25 | 26 | New Reward Vaults are created through the _Reward Vault Whitelisting_ process, conducted through `$BGT` governance proposals. Developers or protocols can submit proposals to create new Reward Vaults for specific eligible assets. If a proposal passes, the new Reward Vault is created and added to the list of approved Reward Vaults where validators can direct `$BGT` emissions. 27 | -------------------------------------------------------------------------------- /apps/core/content/learn/what-is-beaconkit.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: What is BeaconKit 6 | - - meta 7 | - name: description 8 | content: BeaconKit is a modular and customizable consensus layer for Ethereum-based blockchains. 9 | - - meta 10 | - property: og:description 11 | content: BeaconKit is a modular and customizable consensus layer for Ethereum-based blockchains. 12 | --- 13 | 14 | 17 | 18 | # What Is BeaconKit? ⛵✨ 19 | 20 | BeaconKit is a modular and customizable consensus layer for Ethereum-based blockchains. 21 | 22 | 23 | 24 | ![BeaconKit GitHub Repository](/assets/beacon-kit-github-repository.png) 25 | 26 | 27 | 28 | > Check out the official BeaconKit GitHub Repository. 29 | 30 | BeaconKit is an innovative framework that makes the [CometBFT](https://docs.cometbft.com/v0.38/) consensus algorithm available to arbitrary EVM execution environments. 31 | In other words, BeaconKit is a modular [consensus layer](/learn/help/glossary#consensus-client) that is adaptable for Ethereum-based blockchains. 32 | 33 | BeaconKit packages the CometBFT consensus algorithm with a modular middleware layer capable of receiving blocks from any execution environment that conforms to the [Engine API](/learn/help/glossary#engine-api) specification. This allows those blocks to be processed through CometBFT consensus. In practice, this enables support for unmodified EVM [execution clients](/learn/help/glossary#execution-client) to run on top of BeaconKit, allowing chains to be [EVM identical](/learn/#berachain-evm-identical-⟠). 34 | 35 | The framework is built with modularity in mind and can be extended with different layers that may include a custom block builder, a rollup layer, a data availability layer, and others. This modularity enables the building of not only Layer 1 blockchains but also serves as a framework for Layer 2 solutions. 36 | 37 | ## BeaconKit Advantages 38 | 39 | Running a BeaconKit-based chain provides several advantages (assuming the default configuration of pairing with an EVM execution client): 40 | 41 | - Single slot finality (compared to Ethereum's ~13 minutes) 42 | - Optimistic payload building (executing block proposal in parallel with voting) reduces block times by up to 40% 43 | - Conformity to Eth2 modularity 44 | - Full EIP compatibility 45 | -------------------------------------------------------------------------------- /apps/core/content/learn/what-is-proof-of-liquidity.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: What is Proof-of-Liquidity 6 | - - meta 7 | - name: description 8 | content: What is Berachain's Proof-of-Liquidity & How Does it Work? 9 | - - meta 10 | - property: og:description 11 | content: What is Berachain's Proof-of-Liquidity & How Does it Work? 12 | --- 13 | 14 | # What is Proof-of-Liquidity? 🤝 15 | 16 | Proof-of-Liquidity (PoL) is a novel economic mechanism that uses network incentives to align the interests of ecosystem participants and bolster both application-layer and chain security. 17 | 18 | ## Two Token Model 19 | 20 | Berachain's consensus borrows from the Proof-of-Stake (PoS) model and contains two key components: 21 | 22 | 1. [`$BERA`](/learn/pol/tokens/bera) - Validators secure the chain by staking the native gas token 23 | 2. [`$BGT`](/learn/pol/tokens/bgt) - A soulbound governance token distributed by validators for proposing new blocks, which is ultimately rewarded to users who provide ecosystem liquidity (see [Reward Vaults](./pol/rewardvaults.md)) 24 | 25 | A validator's `$BGT` emissions increase with the amount of `$BGT` delegated to them. Protocol-provided [Incentives](/learn/pol/incentives) are received for these emissions, and validators pass these to their delegators after collecting a commission. 26 | 27 | This model creates meaningful economic alignment between previously isolated groups. Validators who return the maximum value to their `$BGT` delegators are likely to receive more delegations. 28 | 29 | ![Proof-of-Liquidity Flywheel](/assets/proof-of-liquidity-flywheel.png) 30 | 31 | ### Separation of Concerns 32 | 33 | Significantly, Proof-of-Liquidity separates the token responsible for gas and security from the token used to govern chain rewards and economic incentives. 34 | 35 | The following diagram illustrates the roles of tokens in Berachain's PoL compared to Ethereum's PoS: 36 | 37 | ![Proof-of-Stake vs Proof-of-Liquidity](/assets/berachain-pos-vs-pol.png) 38 | 39 | > Read more in [Proof-of-Liquidity Overview](/learn/pol/) 40 | -------------------------------------------------------------------------------- /apps/core/content/nodes/beaconkit-consensus.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain BeaconKit Consensus Layer 6 | - - meta 7 | - name: description 8 | content: Berachain BeaconKit is a modular consensus layer for EVM chains 9 | - - meta 10 | - property: og:description 11 | content: Berachain BeaconKit is a modular consensus layer for EVM chains 12 | --- 13 | 14 | # BeaconKit Consensus Layer ⛵✨ 15 | 16 | ![Berachain BeaconKit](/assets/beaconkit-banner.png) 17 | 18 | [BeaconKit](/learn/what-is-beaconkit) is both a consensus client and a framework for building EVM chains. 19 | 20 | BeaconKit leverages CometBFT for its consensus algorithm, wrapped to interface with any EVM-compatible execution environment. As a consensus client, it allows the network (an EVM blockchain like Berachain) to reach agreement based on the data provided by the execution client. 21 | 22 | By conforming to Eth2 modularity, which separates consensus and execution, BeaconKit can leverage all the benefits that come with EVM execution clients. It achieves this by adhering to the [Engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md), which is a JSON-RPC API that enables communication between consensus and execution clients. 23 | 24 | ## BeaconKit Benefits ✅ 25 | 26 | Some of the benefits that come with BeaconKit are: 27 | 28 | 1. **Eth2 Modularity** - Adheres to separation of execution and consensus with communication via Engine API 29 | 2. **Promotes Execution Client Diversity** - Any EVM execution upgrades can be supported out of the box, avoiding the need to run and maintain a custom forked EVM execution client to work with the chain 30 | 3. **CometBFT** - Leverages a trusted consensus algorithm 31 | 4. **Instant Finality** - Achieves [Single Slot Finality / Instant Finality](/learn/help/glossary#single-slot-finality), compared to Ethereum's finality of ~13 minutes 32 | 5. **Leverages EVM Tooling** - The majority of all EVM tooling is supported 33 | 6. **Modular** - BeaconKit is also a modular framework that can allow for the potential implementation of a custom block builder, rollup, data availability layer, and more 34 | 35 | ![Berachain BeaconKit vs Ethereum](/assets/berachain-ethereum-vs-beaconkit.png) 36 | -------------------------------------------------------------------------------- /apps/core/content/nodes/evm-execution.md: -------------------------------------------------------------------------------- 1 | --- 2 | head: 3 | - - meta 4 | - property: og:title 5 | content: Berachain EVM Execution Layer 6 | - - meta 7 | - name: description 8 | content: Berachain supports any EVM execution client that follows the Engine API 9 | - - meta 10 | - property: og:description 11 | content: Berachain supports any EVM execution client that follows the Engine API 12 | --- 13 | 14 | # EVM Execution Layer ⟠ 15 | 16 | The execution layer consists of multiple implementations in the form of EVM execution clients. These clients handle transactions, transaction gossiping, state management, and support for the Ethereum Virtual Machine - they are not responsible for block building. 17 | 18 | The following execution clients have been tested and verified by BeaconKit: 19 | 20 | | Client | Language | Sync Strategies | Recommended Version | 21 | | --------------------------------------------------------- | -------- | ---------------------------------- | ------------------- | 22 | | [Geth](https://github.com/ethereum/go-ethereum) | Golang | Snap, Full | v1.15.10 or .11 | 23 | | [Reth](https://github.com/paradigmxyz/reth) | Rust | Full | v1.3.12 | 24 | | [Nethermind](https://github.com/NethermindEth/nethermind) | C# | Snap (without serving), Fast, Full | v1.31.11 | 25 | | [Erigon](https://github.com/ledgerwatch/erigon) | Golang | Full | v3.0.x | 26 | | [Besu](https://github.com/hyperledger/besu/) | Java | Snap, Fast, Full | v25.4.x | 27 | 28 | Installing a more recent patch version — the `z` in a version number `x.y.z` — is generally safe. 29 | We do not recommend upgrading to new major or minor versions — `x.y.0` — until we have tested them. 30 | -------------------------------------------------------------------------------- /apps/core/content/nodes/faq.md: -------------------------------------------------------------------------------- 1 | # Frequently Asked Questions About Running a Node 2 | 3 | ## How do I get enough BERA for a validator? 4 | 5 | Buy $BERA on the open market through various DEXs and CEXs, or through the Berachain Hub. 6 | 7 | ## I need some help with a technical problem. 8 | 9 | Visit our [Discord](https://discord.gg/berachain)'s `#node-support` channel. Make sure you have reviewed our [Checklist](/nodes/production-checklist) first. 10 | -------------------------------------------------------------------------------- /apps/core/content/public/DocsBear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/DocsBear.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/BEND.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/BEND.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/BERA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/BERA.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/BERPS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/BERPS.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/BEX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/BEX.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/BGT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/BGT.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/EIP7702-Gas-Sponsorship-Diagram-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/EIP7702-Gas-Sponsorship-Diagram-1.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/HONEY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/HONEY.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-address.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-address.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentive-params.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentive-params.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentives-reward-vault-added.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentives-reward-vault-added.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentives-reward-vault-modal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentives-reward-vault-modal.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentives-reward-vault-success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentives-reward-vault-success.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentives-reward-vault.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentives-reward-vault.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/add-incentives-vaults.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/add-incentives-vaults.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/auto-incentivizer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/auto-incentivizer.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/beacon-kit-github-repository.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/beacon-kit-github-repository.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/beaconkit-banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/beaconkit-banner.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bend-dapp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bend-dapp.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bera-allocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bera-allocation.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bera-bridge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bera-bridge.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bera-inflation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bera-inflation.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-airdrop.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-airdrop.jpg -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-bridging-layerzero.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-bridging-layerzero.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-change-validator-commission-rate-process.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-change-validator-commission-rate-process.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-devnet-kurtosis-blockexplorer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-devnet-kurtosis-blockexplorer.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-ethereum-vs-beaconkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-ethereum-vs-beaconkit.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-frontend-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-frontend-01.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-frontend-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-frontend-02.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-frontend-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-frontend-03.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-frontend-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-frontend-04.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-incentive-marketplace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-incentive-marketplace.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-local-devnet-metamask-configuration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-local-devnet-metamask-configuration.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-node-architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-node-architecture.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-polaris-vs-beaconkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-polaris-vs-beaconkit.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-pos-vs-pol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-pos-vs-pol.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-reward-vault-staking-bex.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-reward-vault-staking-bex.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachain-testnet-faucet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachain-testnet-faucet.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berachaindotcom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berachaindotcom.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berahub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berahub.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/berps-dapp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/berps-dapp.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bex-dapp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bex-dapp.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/bgt-apr-example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/bgt-apr-example.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/boost-apr-example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/boost-apr-example.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/boost-validator-queue-boost.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/boost-validator-queue-boost.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/boost-validator-validator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/boost-validator-validator.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/boost-validator-validators.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/boost-validator-validators.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/chart 2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/chart 2.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/claim-incentives-claim-modal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/claim-incentives-claim-modal.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/claim-incentives-hub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/claim-incentives-hub.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/claim-incentives-portfolio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/claim-incentives-portfolio.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/complex-emission.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/complex-emission.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/dapp-beratrail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/dapp-beratrail.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/dapp-bgtstation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/dapp-bgtstation.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/dapp-faucet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/dapp-faucet.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/dapp-honeyswap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/dapp-honeyswap.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/eip7702-basics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/eip7702-basics.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/emission.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/emission.jpg -------------------------------------------------------------------------------- /apps/core/content/public/assets/execute-transaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/execute-transaction.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/geth-bectra-upgrade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/geth-bectra-upgrade.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/governance-process.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/governance-process.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-account-connected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-account-connected.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-project-config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-project-config.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-project-id.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-project-id.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-setup-project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-setup-project.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-button.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-connected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-connected.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-blockexplore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-blockexplore.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-confirmation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-confirmation.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-deploy-success.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-greeting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-contract-greeting.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-modal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-modal.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-signature-prompt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-signature-prompt.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-signature-verification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/guide-berachain-walletconnect-web3modal-signature-verification.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/honey-minting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/honey-minting.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/honey_swap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/honey_swap.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-add-network-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-add-network-01.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-add-network-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-add-network-02.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-add-network-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-add-network-03.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-add-network-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-add-network-04.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-chrome-store.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-chrome-store.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-create-password.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-create-password.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-get-started.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-get-started.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-recovery-phrase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-recovery-phrase.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/metamask-testnet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/metamask-testnet.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/new-transaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/new-transaction.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/nft-bridge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/nft-bridge.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/pol-overview-devs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/pol-overview-devs.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/polaris-vs-beaconkit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/polaris-vs-beaconkit.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/proof-of-liquidity-flywheel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/proof-of-liquidity-flywheel.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/proof-of-liquidity-steps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/proof-of-liquidity-steps.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/reward-allocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/reward-allocation.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/reward-vault-incentives.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/reward-vault-incentives.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/reward-vaults.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/reward-vaults.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/send-batch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/send-batch.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/updatedemission.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/updatedemission.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/v1-vs-v2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/v1-vs-v2.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/val-stakeholder-overview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/val-stakeholder-overview.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/validator-extended-lifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/validator-extended-lifecycle.png -------------------------------------------------------------------------------- /apps/core/content/public/assets/validator-lifecycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/assets/validator-lifecycle.png -------------------------------------------------------------------------------- /apps/core/content/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/favicon.ico -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Bold.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-BoldItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLight.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Italic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Light.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-LightItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Medium.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-MediumItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-Thin.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Mono/IBMPlexMono-ThinItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Bold.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-BoldItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLight.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Italic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Light.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-LightItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Medium.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-MediumItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Regular.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBold.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-Thin.ttf -------------------------------------------------------------------------------- /apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/fonts/IBM_Plex_Sans/IBMPlexSans-ThinItalic.ttf -------------------------------------------------------------------------------- /apps/core/content/public/previewDocs.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/berachain/docs/f1260a4650521cfe93625b2db59e8b6508f5c53c/apps/core/content/public/previewDocs.jpg -------------------------------------------------------------------------------- /apps/core/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@berachain/core", 3 | "version": "2.1.0", 4 | "scripts": { 5 | "dev": "vitepress dev --port 5173", 6 | "build": "vitepress build", 7 | "preview": "vitepress preview", 8 | "clean": "rm -rf .turbo; rm -rf .vitepress/cache; rm -rf .vitepress/dist; rm -rf node_modules;", 9 | "format": "prettier . --write" 10 | }, 11 | "dependencies": { 12 | "@berachain/config": "workspace:^", 13 | "@berachain/ui": "workspace:^", 14 | "@heroicons/vue": "^2.0.18", 15 | "@mdit/plugin-figure": "^0.4.8", 16 | "@mdit/plugin-tab": "^0.4.8", 17 | "@rive-app/canvas": "^2.2.0", 18 | "@tabler/icons-vue": "^3.7.0", 19 | "@vercel/toolbar": "^0.1.30", 20 | "@vueuse/core": "^10.4.1", 21 | "ethers": "^6.13.1", 22 | "markdown-it-conditional-render": "^0.1.0", 23 | "markdown-it-mathjax3": "^4.3.2", 24 | "vitepress": "^1.2.3", 25 | "vue": "^3.3.4" 26 | }, 27 | "devDependencies": { 28 | "@types/node": "^20.5.9", 29 | "prettier": "^2.8.8" 30 | }, 31 | "type": "module" 32 | } 33 | -------------------------------------------------------------------------------- /apps/core/vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "github": { 3 | "silent": true 4 | }, 5 | "cleanUrls": true, 6 | "redirects": [ 7 | { 8 | "source": "/learn/pol/bgtmath", 9 | "destination": "/learn/pol/blockrewards" 10 | }, 11 | { 12 | "source": "/learn/dapps/swap", 13 | "destination": "/learn/dapps/bex" 14 | }, 15 | { 16 | "source": "/faq/", 17 | "destination": "/learn/help/faqs" 18 | }, 19 | { 20 | "source": "/faq", 21 | "destination": "/learn/help/faqs" 22 | }, 23 | { 24 | "source": "/learn/bex/pools", 25 | "destination": "/learn/dapps/bex" 26 | }, 27 | { 28 | "source": "/learn/how-to-connect-a-wallet-with-berachain", 29 | "destination": "/learn/connect-to-berachain" 30 | }, 31 | { 32 | "source": "/community/", 33 | "destination": "/" 34 | }, 35 | { 36 | "source": "/community", 37 | "destination": "/" 38 | }, 39 | { 40 | "source": "/learn/bex/", 41 | "destination": "/learn/dapps/bex" 42 | }, 43 | { 44 | "source": "/learn/bex", 45 | "destination": "/learn/dapps/bex" 46 | }, 47 | { 48 | "source": "/learn/protocol/bgt-station", 49 | "destination": "/learn/dapps/bgt-station" 50 | }, 51 | { 52 | "source": "/learn/protocol/", 53 | "destination": "/learn/pol/" 54 | }, 55 | { 56 | "source": "/learn/protocol/pol-participants", 57 | "destination": "/learn/pol/participants" 58 | }, 59 | { 60 | "source": "/learn/protocol/incentives", 61 | "destination": "/learn/pol/incentives" 62 | }, 63 | { 64 | "source": "/learn/protocol/tokens/", 65 | "destination": "/learn/pol/tokens/bera" 66 | }, 67 | { 68 | "source": "/learn/protocol/tokens/bera", 69 | "destination": "/learn/pol/tokens/bera" 70 | }, 71 | { 72 | "source": "/learn/protocol/tokens/bgt", 73 | "destination": "/learn/pol/tokens/bgt" 74 | }, 75 | { 76 | "source": "/learn/protocol/tokens/honey", 77 | "destination": "/learn/pol/tokens/honey" 78 | }, 79 | { 80 | "source": "/developers/beratrail-block-explorer", 81 | "destination": "https://beratrail.io" 82 | }, 83 | { 84 | "source": "/learn/pol/gauges", 85 | "destination": "/learn/pol/rewardvaults" 86 | }, 87 | { 88 | "source": "/learn/protocol/bgt-emissions", 89 | "destination": "/learn/pol/" 90 | } 91 | ] 92 | } 93 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "scripts": { 4 | "preinstall": "npx only-allow pnpm", 5 | "build": "turbo run build", 6 | "dev": "turbo run dev", 7 | "lint": "turbo run lint", 8 | "format": "prettier --write \"**/*.{ts,tsx,md}\"", 9 | "format:check": "prettier --check \"**/*.{ts,tsx,md}\"", 10 | "with-env": "dotenv -e ./.env --", 11 | "deploy:berachain": "pnpm with-env turbo run deploy:berachain", 12 | "clean": "turbo run clean; rm -rf .turbo; rm -rf node_modules;", 13 | "changeset": "changeset" 14 | }, 15 | "devDependencies": { 16 | "@changesets/changelog-github": "^0.5.0", 17 | "@changesets/cli": "^2.27.7", 18 | "@mermaid-js/mermaid-mindmap": "^9.3.0", 19 | "@turbo/gen": "^1.10.14", 20 | "@types/node": "^20.5.9", 21 | "dotenv-cli": "^7.3.0", 22 | "eslint": "^7.32.0", 23 | "mermaid": "^11.6.0", 24 | "prettier": "^2.8.8", 25 | "turbo": "latest", 26 | "vitepress-plugin-mermaid": "^2.0.17" 27 | }, 28 | "packageManager": "pnpm@8.15.0", 29 | "name": "docs-monorepo", 30 | "engines": { 31 | "node": ">=20" 32 | }, 33 | "dependencies": { 34 | "@vercel/toolbar": "^0.1.30", 35 | "dayjs": "^1.11.13" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /packages/config/.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | cache 3 | .turbo 4 | public 5 | package.json 6 | node_modules 7 | CHANGELOG.md -------------------------------------------------------------------------------- /packages/config/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @berachain/config 2 | 3 | ## 1.2.0 4 | 5 | ### Minor Changes 6 | 7 | - Update contract interfaces and migration guide 8 | 9 | ## 1.1.1 10 | 11 | ### Patch Changes 12 | 13 | - Updates debt token addresses 14 | 15 | ## 1.1.0 16 | 17 | ### Minor Changes 18 | 19 | - c7a86e4: Added BEX api url and updated WETH token address 20 | 21 | ## 1.0.0 22 | 23 | ### Major Changes 24 | 25 | - Initial packagee for both ui and config for berachain docs 26 | -------------------------------------------------------------------------------- /packages/config/README.md: -------------------------------------------------------------------------------- 1 | # Constants Config 2 | 3 | This package is meant to be the main configuration for all urls, websites, and more that applies to all docs. 4 | 5 | Modify the `constants.json` file if you'd like this to apply to all docs. 6 | -------------------------------------------------------------------------------- /packages/config/constants.js: -------------------------------------------------------------------------------- 1 | const constants = require('./constants.json'); 2 | 3 | exports.constants = constants; -------------------------------------------------------------------------------- /packages/config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@berachain/config", 3 | "version": "1.2.0", 4 | "description": "Main configuration file for all configs for the docs", 5 | "scripts": { 6 | "test": "echo \"Error: no test specified\" && exit 1" 7 | }, 8 | "keywords": [ 9 | "berachain", 10 | "testnet", 11 | "constants" 12 | ], 13 | "author": "", 14 | "license": "ISC" 15 | } 16 | -------------------------------------------------------------------------------- /packages/ui/.prettierignore: -------------------------------------------------------------------------------- 1 | dist 2 | cache 3 | .turbo 4 | public 5 | package.json 6 | node_modules 7 | CHANGELOG.md -------------------------------------------------------------------------------- /packages/ui/AddNetwork.vue: -------------------------------------------------------------------------------- 1 | 5 | 51 | 52 | 56 | 69 | 70 | 74 | -------------------------------------------------------------------------------- /packages/ui/AskCookbook.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 23 | 24 | 28 | 31 | -------------------------------------------------------------------------------- /packages/ui/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @berachain/ui 2 | 3 | ## 1.1.1 4 | 5 | ### Patch Changes 6 | 7 | - Updated Feature component to allow for alts and images 8 | 9 | ## 1.1.0 10 | 11 | ### Minor Changes 12 | 13 | - Adds CookBook AI button to all docs navigation 14 | 15 | ## 1.0.1 16 | 17 | ### Patch Changes 18 | 19 | - Fix overlapping navbar 20 | 21 | ## 1.0.0 22 | 23 | ### Major Changes 24 | 25 | - Initial packagee for both ui and config for berachain docs 26 | -------------------------------------------------------------------------------- /packages/ui/CopyToClipboard.vue: -------------------------------------------------------------------------------- 1 | 7 | 30 | 31 | 35 | 48 | 49 | 53 | -------------------------------------------------------------------------------- /packages/ui/Feature.vue: -------------------------------------------------------------------------------- 1 | 5 | 26 | 27 | 31 | 45 | 46 | 50 | -------------------------------------------------------------------------------- /packages/ui/Fidget.vue: -------------------------------------------------------------------------------- 1 | 5 | 29 | 30 | 34 | 39 | 40 | -------------------------------------------------------------------------------- /packages/ui/NavBarMenu.vue: -------------------------------------------------------------------------------- 1 | 5 | 12 | 13 | 17 | 26 | 27 | 31 | 42 | -------------------------------------------------------------------------------- /packages/ui/NavBarMenuLink.vue: -------------------------------------------------------------------------------- 1 | 5 | 17 | 18 | 22 | 40 | 41 | 45 | 65 | -------------------------------------------------------------------------------- /packages/ui/NavScreenMenuGroup.vue: -------------------------------------------------------------------------------- 1 | 5 | 26 | 27 | 31 | 58 | 59 | 63 | 127 | -------------------------------------------------------------------------------- /packages/ui/Token.vue: -------------------------------------------------------------------------------- 1 | 5 | 14 | 15 | 19 | 25 | 26 | 30 | -------------------------------------------------------------------------------- /packages/ui/global.d.ts: -------------------------------------------------------------------------------- 1 | // Imports 2 | // ======================================================== 3 | import { BrowserProvider, Eip1193Provider } from "ethers"; 4 | 5 | // Types 6 | // ======================================================== 7 | declare global { 8 | interface Window { 9 | ethereum: Eip1193Provider & BrowserProvider; 10 | } 11 | } 12 | 13 | declare module "@rive-app/canvas"; 14 | -------------------------------------------------------------------------------- /packages/ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@berachain/ui", 3 | "version": "1.1.1", 4 | "description": "", 5 | "main": "./index.ts", 6 | "types": "./index.ts", 7 | "exports": { 8 | ".": "./", 9 | "./CopyToClipboard": "./CopyToClipboard.vue", 10 | "./AddNetwork": "./AddNetwork.vue", 11 | "./Feature": "./Feature.vue", 12 | "./Fidget": "./Fidget.vue", 13 | "./NavBar": "./NavBar.vue", 14 | "./NavBarMenu": "./NavBarMenu.vue", 15 | "./NavBarMenuLink": "./NavBarMenuLink.vue", 16 | "./NavScreenMenuGroup": "./NavScreenMenuGroup.vue", 17 | "./Flyout": "./Flyout.vue", 18 | "./Sidebar": "./Sidebar.vue", 19 | "./Token": "./Token.vue", 20 | "./AskCookbook": "./AskCookbook.vue", 21 | "./style": "./style.css" 22 | }, 23 | "scripts": { 24 | "test": "echo \"Error: no test specified\" && exit 1", 25 | "clean": "rm -rf .turbo; rm -rf node_modules;" 26 | }, 27 | "keywords": [], 28 | "author": "", 29 | "license": "ISC", 30 | "dependencies": { 31 | "@heroicons/vue": "^2.0.18", 32 | "@rive-app/canvas": "^2.2.0", 33 | "@vueuse/core": "^10.4.1", 34 | "ethers": "^6.13.1", 35 | "vitepress": "1.0.0-rc.10", 36 | "vue": "^3.3.4" 37 | }, 38 | "devDependencies": { 39 | "typescript": "^5.5.2", 40 | "vue-tsc": "^2.0.21" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /packages/ui/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2020", 4 | "useDefineForClassFields": true, 5 | "module": "ESNext", 6 | "lib": ["ES2020", "DOM", "DOM.Iterable"], 7 | "skipLibCheck": true, 8 | 9 | /* Bundler mode */ 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "resolveJsonModule": true, 13 | "isolatedModules": true, 14 | "noEmit": true, 15 | "jsx": "preserve", 16 | 17 | /* Linting */ 18 | "strict": true, 19 | "noUnusedLocals": true, 20 | "noUnusedParameters": true, 21 | "noFallthroughCasesInSwitch": true, 22 | }, 23 | "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"], 24 | "references": [{ "path": "./tsconfig.node.json" }] 25 | } 26 | -------------------------------------------------------------------------------- /packages/ui/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": true, 4 | "skipLibCheck": true, 5 | "module": "ESNext", 6 | "moduleResolution": "bundler", 7 | "allowSyntheticDefaultImports": true, 8 | "strict": true 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "apps/*" 3 | - "packages/*" 4 | -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://turbo.build/schema.json", 3 | "globalDependencies": ["**/.env.*local"], 4 | "tasks": { 5 | "build": { 6 | "dependsOn": ["^build"], 7 | "outputs": [".vitepress/dist/**", "!.vitepress/cache/**"] 8 | }, 9 | "lint": {}, 10 | "dev": { 11 | "cache": false, 12 | "persistent": true, 13 | "dependsOn": ["^dev"] 14 | }, 15 | "deploy:berachain": { 16 | "cache": false, 17 | "persistent": true 18 | }, 19 | "clean": {} 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "github": { 3 | "silent": true 4 | }, 5 | "cleanUrls": true 6 | } 7 | --------------------------------------------------------------------------------