{"id":20844316,"url":"https://github.com/bootnodedev/dappbooster","last_synced_at":"2025-04-10T18:16:46.679Z","repository":{"id":253159721,"uuid":"773957285","full_name":"BootNodeDev/dAppBooster","owner":"BootNodeDev","description":"A modern blockchain boilerplate built to quickly get you started with your next project.","archived":false,"fork":false,"pushed_at":"2025-04-07T19:33:29.000Z","size":3387,"stargazers_count":10,"open_issues_count":17,"forks_count":3,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2025-04-07T19:40:48.859Z","etag":null,"topics":["blockchain","bootnode","ethereum","open-source","optimism","styled-components","typescript","web3"],"latest_commit_sha":null,"homepage":"https://dappbooster.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BootNodeDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-18T17:35:49.000Z","updated_at":"2025-04-07T19:33:32.000Z","dependencies_parsed_at":"2024-08-17T01:26:16.455Z","dependency_job_id":"2b4e55ac-46d4-413b-8a6f-c29250fbe0ab","html_url":"https://github.com/BootNodeDev/dAppBooster","commit_stats":null,"previous_names":["bootnodedev/dappbooster"],"tags_count":24,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BootNodeDev%2FdAppBooster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BootNodeDev%2FdAppBooster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BootNodeDev%2FdAppBooster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BootNodeDev%2FdAppBooster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BootNodeDev","download_url":"https://codeload.github.com/BootNodeDev/dAppBooster/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248269768,"owners_count":21075788,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","bootnode","ethereum","open-source","optimism","styled-components","typescript","web3"],"created_at":"2024-11-18T02:09:17.317Z","updated_at":"2025-04-10T18:16:46.662Z","avatar_url":"https://github.com/BootNodeDev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![dAppBooster Logo](https://dappbooster.dev/share/repo_banner.svg)](https://dappbooster.dev)\n\n# dAppBooster\n\n![Static Badge](https://img.shields.io/badge/dApp-Booster-green?style=flat\u0026color=%238b46a4)\n![GitHub package.json version](https://img.shields.io/github/package-json/v/BootNodeDev/dAppBooster?style=flat\u0026color=%238b46a4) ![GitHub top language](https://img.shields.io/github/languages/top/bootnodedev/dappbooster) ![GitHub branch status](https://img.shields.io/github/checks-status/bootnodedev/dappbooster/main) ![GitHub License](https://img.shields.io/github/license/bootnodedev/dappbooster)\n\n[dAppBooster](https://dappbooster.dev) is a template to help you in the development of blockchain frontend applications. It aims to provide an opinionated set of tools and best practices to speed up the development process and make it more reliable.\n\nCheck out the documentation for more information about building your first dApp: [docs.dappbooster.dev](https://docs.dappbooster.dev/)\n\n## Table of Contents\n\n1. [Requirements](#requirements)\n2. [Installation](#installation)\n3. [Configuration](#configuration)\n4. [Development](#development)\n5. [Advanced configuration](#advanced-configuration)\n6. [Contributing](#contributing)\n\n## Requirements\n\n- Node v20+\n- pnpm\n\n## Installation\n\nEnsure `pnpm` is installed (https://pnpm.io/) and clone the repository.\n\n```bash\n# Clone the repository\ngit clone git@github.com:BootNodeDev/dAppBooster.git my-dapp\n\n# Change the directory\ncd my-dapp\n\n# Checkout the latest release\ngit checkout main\n\n# Create a local .env file\ncp .env.example .env.local\n\n# Install the dependencies\npnpm i\n```\n\nNow you might want to change your project's name and description in the `package.json` file.\n\n```json\n{\n  \"name\": \"my-dapp\",\n  \"description\": \"My dApp\"\n}\n```\n\nAlso you might want to change your project's remote repository to a different one.\n\n```bash\n# Change the remote repository\ngit remote set-url origin\n```\n\n## Configuration\n\n### Configuration File\n\nConfigure the appropriate settings in the `.env.local` file. Most vars are optional and they should be self-explanatory.\n\n## Development\n\n### Serve dev mode\n\n```bash\npnpm dev\n```\n\nYou can start modifying the content of the home page by editing `src/components/pageComponents/home/index.tsx`. The page auto-updates as you edit the file.\n\nYou can also modify and see how our Web3 components work in the [demos folder](src/components/pageComponents/home/Examples/demos).\n\n### Build for production\n\n```bash\npnpm build\n```\n\n### Serve production build\n\n```bash\npnpm preview\n```\n\n## Basic folder structure\n\n- `src/`: Source code\n  - `components/`: Reusable components\n    - `components/sharedComponents`: Components shared across multiple pages\n    - `components/pageComponents`: Components specific to a page\n  - `routes/`: TanStack Router routes\n  - `styles/`: App styles\n\n## Advanced configuration\n\n### Networks\n\nTo add / remove / edit a network supported by the dApp you can do it directly in the [`networks.config.ts`](src/lib/networks.config.ts) file.\n\n1. Import the supported network of your choice, say `base`.\n\n```diff\n- import { mainnet, optimismSepolia, sepolia } from 'viem/chains'\n+ import { base, mainnet, optimismSepolia, sepolia } from 'viem/chains'\n\n...\n\n- export const chains = [mainnet, optimismSepolia, sepolia] as const\n+ export const chains = [base, mainnet, optimismSepolia, sepolia] as const\n\n```\n\n2. Include it in the trasports, using the default RPC provided by wagmi/viem...\n\n```diff\nexport const transports: RestrictedTransports = {\n    ...\n+   [base.id]: http(env.PUBLIC_RPC_BASE),\n}\n```\n\n#### Specifying the RPC\n\nIf you want to use an RPC different from the one provided by wagmi\n\n1. Define the env variable\n\n```diff\n+ PUBLIC_RPC_BASE=https://base.llamarpc.com\n```\n\n2. Import it in the [`src/env.ts`](src/env.ts) file\n\n```diff\nexport const env = createEnv({\n  client: {\n    ...\n+   PUBLIC_RPC_BASE: z.string().optional(),\n  },\n})\n```\n\n**Note:** if not specified, it will be `undefined` making the app to use the wagmi-defined RPC.\n\n### ESLint configuration for production releases\n\nIf you are developing a production application, we recommend updating the [configuration file](.eslintrc) to enable type aware lint rules:\n\n- Configure the top-level `parserOptions` property like this:\n\n```cjs\nexport default {\n  // other rules...\n  parserOptions: {\n    ecmaVersion: 'latest',\n    sourceType: 'module',\n    project: ['./tsconfig.json', './tsconfig.node.json'],\n    tsconfigRootDir: __dirname,\n  },\n}\n```\n\n- Replace `plugin:@typescript-eslint/recommended` for `plugin:@typescript-eslint/recommended-type-checked` or `plugin:@typescript-eslint/strict-type-checked`\n- Optionally add `plugin:@typescript-eslint/stylistic-type-checked`\n\n## Contributing\n\nIf you want to contribute to this project, please read the [contributing guidelines](CONTRIBUTING.md). Issues and pull requests are welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbootnodedev%2Fdappbooster","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbootnodedev%2Fdappbooster","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbootnodedev%2Fdappbooster/lists"}