{"id":21588886,"url":"https://github.com/evmts/evmts-vite-wagmi-example","last_synced_at":"2025-09-02T00:35:29.727Z","repository":{"id":184341921,"uuid":"668558397","full_name":"evmts/evmts-vite-wagmi-example","owner":"evmts","description":"A forkable boilerplate for starting an Evmts project with vite react and wagmi","archived":false,"fork":false,"pushed_at":"2023-11-24T21:58:54.000Z","size":558,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-02T21:54:21.688Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/evmts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2023-07-20T05:12:49.000Z","updated_at":"2023-07-28T01:52:01.000Z","dependencies_parsed_at":"2023-11-24T22:31:28.602Z","dependency_job_id":"df8d48d9-32f0-43e6-9c6d-1c89ba0897f0","html_url":"https://github.com/evmts/evmts-vite-wagmi-example","commit_stats":null,"previous_names":["evmts/evmts-vite-wagmi-example"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/evmts/evmts-vite-wagmi-example","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evmts%2Fevmts-vite-wagmi-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evmts%2Fevmts-vite-wagmi-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evmts%2Fevmts-vite-wagmi-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evmts%2Fevmts-vite-wagmi-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evmts","download_url":"https://codeload.github.com/evmts/evmts-vite-wagmi-example/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evmts%2Fevmts-vite-wagmi-example/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273213921,"owners_count":25065058,"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","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-11-24T16:11:51.196Z","updated_at":"2025-09-02T00:35:29.702Z","avatar_url":"https://github.com/evmts.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://evmts.dev/\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/35039927/218812217-92f0f784-cb85-43b9-9ca6-e2b9effd9eb2.png\"\u003e\n      \u003cimg alt=\"wagmi logo\" src=\"https://user-images.githubusercontent.com/35039927/218812217-92f0f784-cb85-43b9-9ca6-e2b9effd9eb2.png\" width=\"auto\" height=\"300\"\u003e\n    \u003c/picture\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Evmts Vite Wagmi Boilerplate\n\u003cp\u003e\n\nTo use this plugin with Visual Studio Code, you should set your workspace's version of TypeScript, which will load plugins from your tsconfig.json file.\n\nFor instructions, see: [Using the workspace version of TypeScript](https://code.visualstudio.com/docs/typescript/typescript-compiling#_using-the-workspace-version-of-typescript).\n\n# 🤝 Getting Started\n\n1. Install PNPM\n\nPNPM is similar to npm and the usage of it's cli is nearly identical to NPM but much faster at installing node_modules\n\n```\nnpm install pnpm --global\n```\n\n2. Fill in environment variables with an alchemy key. To gets started quick just use the public alchemy key `_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC` but you may face rate limits\n\n```\ncp example.env .env\n```\n\n3. Start app\n\nRun `npm run dev` in your terminal. If you are not using node18 you may have to pass in `--experimental-fetch` to node. Use [NVM](https://github.com/nvm-sh/nvm) with `nvm use` command to use this workspaces node version\n\n## ✨ What is this?\n\nThis is a [Evmts](https://evmts.dev) + [wagmi](https://wagmi.sh) ! [vite](https://vitejs.dev/) boilerplate to get started using Evmts quickly\n\nEvmts allows you to import Solidity directly into your NEXT.js typescript files with great editor support and minimal boilerplate.  Features include\n\n- Etherscan links on hover\n- Human readable ABIs\n- Seemless integration with wagmi for reads, writes, and events\n- No ABIs referenced again just import the contract directly\n- No Addresses needed to be copy pasted just configure them in the [tsconfig](./tsconfig.json)\n\n## 🌟 Evmts features\n\n- Direct contract imports with etherscan links on hover\n\n\u003cimg width=\"831\" alt=\"image\" src=\"https://github.com/evmts/evmts-next-example/assets/35039927/b824bc01-bf47-46fa-8b2b-bd0fea5f988f\"\u003e\n\n- [Read example](./src/wagmi/WagmiReads.tsx)\n\n\u003cimg width=\"988\" alt=\"image\" src=\"https://github.com/evmts/evmts-next-example/assets/35039927/315711e7-1697-40bb-84c5-59e30b0ccb7a\"\u003e\n\n- [Write example](./src/wagmi/WagmiWrites.tsx)\n\n\u003cimg width=\"1013\" alt=\"image\" src=\"https://github.com/evmts/evmts-next-example/assets/35039927/38975379-4eb1-47c2-8b15-560b676db029\"\u003e\n\n- [Events example](./src/wagmi/WagmiEvents.tsx)\n\n\u003cimg width=\"1115\" alt=\"image\" src=\"https://github.com/evmts/evmts-next-example/assets/35039927/349b0a73-62e7-4517-a03c-8951a471c8be\"\u003e\n\n# 📜 Docs\n\nEvmts docs exist at [evmts.dev](https://evmts.dev). As Evmts is currently still in Alpha and following [documentation driven development](https://gist.github.com/zsup/9434452) much of the documented behavior may not be implemented yet.\n\n# 🔧 Configuration\n\nThis boilerplate comes preconfigured but we will document what needed to be configured in case you are following along to add to your own NEXT.js app\n\nEvmts requires two pieces of configuration to get started.\n\n1. TypeScript configuration \n\n`@evmts/ts-plugin` is configured in the [tsconfig.json](./tsconfig.json). Evmts uses this configuration to configure the addresses, solc version etc.  The TypeScript plugin provides TypeScript editor support for your Solidity imports.\n\n2. Bundler configuration\n\nThe bundler is how the files are processed at runtime. This boilerplate uses esbuild. Simple esbuild configuration is done in the [build.ts](./build.ts) file. The plugin here will read the configuration in the [tsconfig.json](./tsconfig.json)\n\n## 🪄 Usage examples\n\nUsage examples are in [src/wagmi](./src/wagmi) folder\n\n## 💻 VSCode setup\n\n- **Recommended usage**\n\nTo use this plugin with Visual Studio Code, you should set your workspace's version of TypeScript, which will load plugins from your tsconfig.json file.\n\nFor instructions, see: [Using the workspace version of TypeScript](https://code.visualstudio.com/docs/typescript/typescript-compiling#_using-the-workspace-version-of-typescript).\n\n- **Alternative usage**\nYou can simple add this plugin to \"typescript.tsserver.pluginPaths\" in settings. You cannot provide plugin options such as contract addresseswith this approach.\n\n{\n  \"typescript.tsserver.pluginPaths\": [\"@evmts/ts-plugin\"]\n}\n\n- **Other editors**\n\nOther editors are not tested/documented yet. I personally use neovim successfully and it should work in most editors. They all work via the ts-plugin settings similar to vscode.\n\n## 🩹 Rough edges\n\n#### Typechecking\n\nTypechecking is disabled in the next.config.ts. Your editor will typecheck and provide diagnostics correctly but the NEXT.js build is not configured yet.\n\nFull TypeChecking will be available soon in one of the next few releases of Evmts alpha after it migrates the langauge server to [volar](https://volarjs.github.io/)\n\n#### Importing from lib or node_modules\n\nCurrently there is a bug when importing from node_modules (or lib if using foundry remappings) directly from TS files.\n\n## ⭐ Github \n\nIf you like Evmts give it a ⭐ at the [Evmts monorepo](https://github.com/evmts/evmts-monorepo)\n\n## 🔗 See also\n\n- Check out [Next example](https://github.com/orgs/evmts/repositories) for an example of Evmts wagmi and Next\n- Check out [Vite example](https://github.com/evmts/evmts-monorepo/tree/main/examples/vite) for an example of Evmts wagmi and Vite\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevmts%2Fevmts-vite-wagmi-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevmts%2Fevmts-vite-wagmi-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevmts%2Fevmts-vite-wagmi-example/lists"}