{"id":19689781,"url":"https://github.com/PaulRBerg/create-eth-app","last_synced_at":"2025-04-29T08:35:20.271Z","repository":{"id":37472855,"uuid":"233484109","full_name":"WalletConnect/create-eth-app","owner":"WalletConnect","description":"Create Ethereum-powered apps with one command","archived":true,"fork":false,"pushed_at":"2024-04-10T08:13:43.000Z","size":39543,"stargazers_count":2772,"open_issues_count":41,"forks_count":507,"subscribers_count":57,"default_branch":"develop","last_synced_at":"2025-04-24T02:31:14.533Z","etag":null,"topics":["create-react-app","ethereum","graphql","react","the-graph","yarn","yarn-workspaces"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/create-eth-app","language":"JavaScript","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/WalletConnect.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":".github/CODE_OF_CONDUCT.md","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},"funding":{"custom":"https://omo.so/prberg","github":"PaulRBerg"}},"created_at":"2020-01-13T01:04:56.000Z","updated_at":"2025-04-20T15:35:32.000Z","dependencies_parsed_at":"2023-02-06T06:30:45.463Z","dependency_job_id":"c0e01811-eaad-4b9e-a06e-1f86ef3bdf66","html_url":"https://github.com/WalletConnect/create-eth-app","commit_stats":{"total_commits":301,"total_committers":20,"mean_commits":15.05,"dds":0.2491694352159468,"last_synced_commit":"eb9bdfea6d372f34053c6106c7733cd43df6e0e4"},"previous_names":["walletconnect/create-eth-app","paulrberg/create-eth-app"],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WalletConnect%2Fcreate-eth-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WalletConnect%2Fcreate-eth-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WalletConnect%2Fcreate-eth-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WalletConnect%2Fcreate-eth-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WalletConnect","download_url":"https://codeload.github.com/WalletConnect/create-eth-app/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251465291,"owners_count":21593854,"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":["create-react-app","ethereum","graphql","react","the-graph","yarn","yarn-workspaces"],"created_at":"2024-11-11T19:01:11.268Z","updated_at":"2025-04-29T08:35:20.252Z","avatar_url":"https://github.com/WalletConnect.png","language":"JavaScript","readme":"# Create Eth App [![Styled with Prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg)](https://prettier.io) [![Commitizen Friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-blue.svg)](https://github.com/facebook/create-react-app/blob/master/CONTRIBUTING.md)\n\nCreate Ethereum-powered apps with one command.\n\nCreate Eth App works on macOS, Windows, and Linux.\u003cbr\u003e\nIf something doesn’t work, please [file an issue](https://github.com/paulrberg/create-eth-app/issues/new).\u003cbr\u003e\nIf you have questions or need help, please ask in our [Discord](https://discord.gg/bsS8T47) community.\n\n## Quick Overview\n\n```sh\nyarn create eth-app my-eth-app\ncd my-eth-app\nyarn react-app:start\n```\n\nIf you've previously installed `create-eth-app` globally via `yarn global add create-eth-app`, we recommend you\nuninstall the package using `yarn global remove create-eth-app` and use the `yarn create eth-app` shorthand to ensure that you use the last version.\n\nThen open [http://localhost:3000/](http://localhost:3000/) to see your app.\u003cbr\u003e\nWhen you’re ready to deploy to production, create a minified bundle with `yarn run react-app:build`.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"./screencast.gif\" width=\"600\" alt=\"yarn react-app:start\"\u003e\n\u003c/p\u003e\n\n## Creating an App\n\n**You’ll need to have Node 16 or later version on your local development machine** (but it’s not required on the server). You can use [nvm](https://github.com/creationix/nvm#installation) (macOS/Linux) or [nvm-windows](https://github.com/coreybutler/nvm-windows#node-version-manager-nvm-for-windows) to switch Node versions between different projects.\n\n**You'll also need Yarn on your local development machine**. This is because Create Eth App relies on Yarn\nWorkspaces, a feature not supported by Npm.\n\nTo create a new app, you may use the following method:\n\n```sh\nyarn create eth-app my-eth-app\n```\n\n_[`yarn create \u003cstarter-kit-package\u003e`](https://yarnpkg.com/lang/en/docs/cli/create/) is available in Yarn 0.25+_\n\nIt will create a directory called `my-eth-app` inside the current folder.\u003cbr\u003e\n\nInside that directory, if you didn't use a custom [framework](https://github.com/paulrberg/create-eth-app#frameworks) or [template](https://github.com/paulrberg/create-eth-app#templates), you will get the initial project structure:\n\n```\nmy-eth-app\n├── README.md\n├── node_modules\n├── package.json\n├── .gitignore\n└── packages\n    ├── contracts\n    │   ├── README.json\n    │   ├── package.json\n    │   └── src\n    │       ├── abis\n    │       │   ├── erc20.json\n    │       │   └── ownable.json\n    │       ├── addresses.js\n    │       └── index.js\n    ├── react-app\n    │   ├── README.md\n    │   ├── package.json\n    │   ├── node_modules\n    │   ├── public\n    │   │   ├── favicon.ico\n    │   │   ├── index.html\n    │   │   └── manifest.json\n    │   └── src\n    │       ├── App.css\n    │       ├── App.js\n    │       ├── App.test.js\n    │       ├── ethereumLogo.svg\n    │       ├── index.css\n    │       ├── index.js\n    │       ├── serviceWorker.js\n    │       └── setupTests.js\n    └── subgraph\n        ├── README.md\n        ├── abis\n        │   └── erc20.json\n        ├── package.json\n        ├── schema.graphql\n        ├── src\n        │   └── mappings\n        │       ├── tokens.ts\n        │       └── transfers.ts\n        └── subgraph.yaml\n```\n\nOnce the installation is done, you can open your project folder:\n\n```sh\ncd my-eth-app\n```\n\n### Frameworks\n\nCreate Eth App supports multiple frontend frameworks. See the folders under [templates](/templates) for a complete list of the available options. \u003cbr\u003e\n\nYou can pass the name of the framework as the value for the `--framework` command-line argument. Create Eth App defaults to React if no framework is provided manually.\n\n```sh\nyarn create eth-app my-eth-app --framework vue\n```\n\n### Templates\n\nCreate Eth App comes with a host of decentralized finance templates pre-filled with contract ABIs, addresses and subgraphs. Go to the [templates](/templates) folder, select any framework from the list and see what templates are available. \u003cbr\u003e\n\nYou can pass the name of the template as the value for the `--template` command-line argument.\n\n```sh\nyarn create eth-app my-eth-app --template compound\n```\n\n## Philosophy\n\n- **Minimalistic by design:** You are one command away from creating a new Ethereum-powered React app. No intermediary installs, scripts or shims.\n\n- **End-to-End**: Create Eth App provides you everything that you need to build and maintain an Ethereum-powered React app\n  at scale, by bringing Yarn Workspaces, Create React App and The Graph under one roof\n\n- **Aimed at Experience Architects**: As Kames CG argues in [Ethereum Growth's Problem](https://medium.com/horizin/ethereums-growth-problem-5cab86734917), the Ethereum ecosystem is in\n  a much greater need for top-notch product creators, not smart contract developers. Create Eth App does\n  not enable a smart contract development environment, expecting you to import your own ABIs or build on top of\n  an established protocol like [Maker](https://makerdao.com), [Compound](https://compound.finance/) or [Sablier](https://sablier.com)\n\n- **Not Reinventing The Wheel**: Under the hood, you use Create React App, one of the most popular and battle-tested frontend development\n  environments.\n\n## What’s Included?\n\nYour environment will have everything you need to build a modern Ethereum-powered single-page React app:\n\n- Smooth project management via [Yarn Workspaces](https://classic.yarnpkg.com/en/docs/workspaces/)\n- Everything included with [Create React\n  App](https://github.com/facebook/create-react-app/blob/master/README.md#whats-included): React, JSX, ES6, TypeScript\n  and Flow syntax support\n- Template subgraph that indexes the events emitted by an\n  [ERC-20](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md) contract\n- Minimalist structure for managing the smart contract [ABIs](https://ethereum.stackexchange.com/questions/234/what-is-an-abi-and-why-is-it-needed-to-interact-with-contracts) and addresses\n- Hassle-free updates for the above tools with a single dependency\n\n## Popular Alternatives\n\nCreate Eth App is a great fit for:\n\n- **Learning how to write Ethereum-powered apps** in a comfortable and feature-rich development environment.\n- **Starting new Ethereum-powered single-page React applications** without wasting time on copy-pasting boilerplates\n- **Creating examples** with React for your Ethereum-related libraries and components.\n\nBut Ethereum is a large ecosystem. Here are a few common cases where you might want to try something else:\n\n- If you want to **try Ethereum** in its most basic form, consider [using the Remix in-browser IDE](https://remix.ethereum.org/)\n- If you want to **write, test and deploy smart contracts**, consider using\n  [Foundry](https://github.com/foundry-rs/foundry) or [Hardhat](https://hardhat.org/)\n- If you want to **write smart contracts and also build a frontend app**, consider using [scaffold-eth](https://github.com/scaffold-eth/scaffold-eth)\n- If you want to **get Goerli testETH**, consider using the [Goerli faucet](https://goerlifaucet.com)\n- If you want to **deploy to testnet or mainnet**, consider using [Alchemy](https://docs.alchemy.com), [Moralis](https://moralis.com), [Infura](https://infura.io) or another blockchain platform with RPC endpoints\n\nFor alternatives to React in particular, read the [official Create React App\ndocumentation](https://github.com/facebook/create-react-app/blob/master/README.md#popular-alternatives).\n\n## Acknowledgements\n\nWe are grateful to the authors of existing related projects from which we drew inspiration:\n\n- [create-react-app](https://github.com/facebook/create-react-app)\n- [create-next-app](https://github.com/zeit/next.js/tree/master/packages/create-next-app)\n\nAnd also the Vue.js community for the CLI we used to generate our templates:\n\n- [@vue/cli](https://cli.vuejs.org/)\n\n## Contributors\n\n\u003ca href=\"https://github.com/PaulRBerg/create-eth-app/graphs/contributors\"\u003e\u003cimg src=\"https://contrib.rocks/image?repo=PaulRBerg/create-eth-app\" /\u003e\u003c/a\u003e\n\n## License\n\nCreate Eth App is open source software [licensed as MIT](https://github.com/paulrberg/create-eth-app/blob/develop/LICENSE).\n","funding_links":["https://omo.so/prberg","https://github.com/sponsors/PaulRBerg"],"categories":["Tools 👷‍♂️","SubGraph"],"sub_categories":["Community Articles:"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPaulRBerg%2Fcreate-eth-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPaulRBerg%2Fcreate-eth-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPaulRBerg%2Fcreate-eth-app/lists"}