{"id":17682312,"url":"https://github.com/aquaflamingo/web3-app-scaffold","last_synced_at":"2026-06-30T06:31:14.470Z","repository":{"id":110074188,"uuid":"410910277","full_name":"aquaflamingo/web3-app-scaffold","owner":"aquaflamingo","description":"Full web3 application scaffold for decentralized application (DApp) development. ","archived":false,"fork":false,"pushed_at":"2022-04-27T16:14:12.000Z","size":161,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-01T10:39:39.831Z","etag":null,"topics":["dapp","hardhat","hardhat-template","web3"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aquaflamingo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2021-09-27T14:08:02.000Z","updated_at":"2021-09-27T15:46:27.000Z","dependencies_parsed_at":"2023-05-21T01:45:16.587Z","dependency_job_id":null,"html_url":"https://github.com/aquaflamingo/web3-app-scaffold","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aquaflamingo/web3-app-scaffold","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aquaflamingo%2Fweb3-app-scaffold","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aquaflamingo%2Fweb3-app-scaffold/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aquaflamingo%2Fweb3-app-scaffold/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aquaflamingo%2Fweb3-app-scaffold/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aquaflamingo","download_url":"https://codeload.github.com/aquaflamingo/web3-app-scaffold/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aquaflamingo%2Fweb3-app-scaffold/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34955985,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-30T02:00:05.919Z","response_time":92,"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":["dapp","hardhat","hardhat-template","web3"],"created_at":"2024-10-24T09:13:29.185Z","updated_at":"2026-06-30T06:31:14.447Z","avatar_url":"https://github.com/aquaflamingo.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Web3 Application Scaffold\n\u003e Ethereum is v srs bzns.\n\nA basic scaffolding template for getting started building Web3 Applications (DApps) using Hardhat, web3-react and hardhat-deploys. Basically, setting up a development environment for `CMD + C CMD + V` driven development.\n\nThis scaffolding template separates web client from the blockchain development. This create an developer environment where work can be parallelized if needed and separated between developers. It does have some drawbacks / annoyances (e.g. sharing compiled contract ABI between apps, two separate sets of `node_modules` and `package.json` dependencies), but, overall makes things a bit cleaner.\n\nWhen you compile and deploy your Hardhat contracts, the compiled ABI is stored in the shared root `lib` project, which using `npm` or `yarn` package `link`s you can import into your web client as needed. This allows you, should you choose to accept your adventure, compile and deploy hardhat contract, then deploy result contract library to an internal NPM registry and pull it down in your web client.\n\n## Create private keys\nBefore you can actually use your application you need to setup some Ethereum accounts. The `blockchain` project is setup to read from a local file `hardhatAccounts.json` containing preset private keys and balances.\n\n```javascript\n{\n\t \"accounts\": [\n\t\t\t{\n\t\t\t\t \"address\": \"addressHere\", \n\t\t\t\t \"privateKey\": \"privateKey\",\n\t\t\t\t \"balance\": \"10000000000000000000000\"\n\t\t\t}\n\t ]\n}\n```\n\nYou can do this via Metamask. \n\n\u003e **NOTE** Make sure you setup MetaMask to use the Hardhat network (custom RPC via 31337) before hand.\n\nMetaMask \u003e Create Account \u003e Copy private + Address\n\nAdd Private Key and Address information to `hardhatAccounts.json`. Hardhat will read from this file and initialize the local development environment using this information. In other words, the \"owner\" of a deployed contract will be one of these accounts.\n\n## Setup \nYou will need to `cd` into the directories and grab node modules:\n```bash\ncd blockchain\n\nyarn\n```\n\nDownload web modules\n```bash\ncd web\n\nyarn\n```\n\nFinally, we need to create a local `yarn` link for the shared `@web3-app-scaffolding/contracts` package which will contain the compiled contract code.\n\n```bash\ncd lib\n\n# Register the shared `lib` package for usage with other local clients\nyarn link\n\n# yarn link v1.9.2\n# success Registered \"@web3-app-scaffold/contracts\"\n# info You can now run `yarn link \"@web3-app-scaffold/contracts\"` in the projects where you want to use this project and it will be used instead.\n```\n\nNow back to the web client:\n```bash\ncd web\n\nyarn link \"@web3-app-scaffold/contracts\"\n```\n\nNow that the `@web3-app-scaffolding/contracts` package is registered, we can access the contract ABI in the web client via `import`.\n\n```javascript\nimport Artifacts from \"@web3-app-scaffold/contracts\";\nconst Greeter = Artifacts.contracts.Greeter;\n```\n\n## Usage\nAfter cloning and setting up the repository you can use the `Makefile` targets to get up and running.\n\nStarting hardhat and deploying contracts\n```bash\n# Starts a localhost instance of the Hardhat network\nmake hh.node\n\n# Compiles and deploys your hardhat contracts\n# note that by default your compiled contracts will be\n# stored in the directory lib/contracts/index.json\nmake hh.deploy\n\n# Finally, we can start the webclient\nmake web.start\n\n# Navigate to localhost:3000 and hopefully things worked 😃\n```\n\n## License\nThis repository is licensed under [MIT Open Source](https://opensource.org/licenses/MIT)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faquaflamingo%2Fweb3-app-scaffold","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faquaflamingo%2Fweb3-app-scaffold","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faquaflamingo%2Fweb3-app-scaffold/lists"}