diff --git a/CHANGELOG.md b/CHANGELOG.md index d26c3d86..e61a4dea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,229 +5,244 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.8.0] - 2022-03-19 + +### Added + +- Add Chainlink template for both React and Vue ([#154](https://github.com/paulrberg/create-eth-app/pull/154)) (@fabioDMFerreira) +- Integrate the [useDapp](https://usedapp.io/) framework (@paulrberg) + +### Changed + +- Refactor all contract call examples to use `useDapp` instead of the vanilla `ethers.js` library (@paulrberg) +- Rename default package from "@project" to "@my-app" (@paulrberg) +- Switch to simpler `@apollo/client` configuration (@paulrberg) +- Update subgraph query in the Sablier v1 template (@paulrberg) +- Update subgraph query in the Synthetix template (@paulrberg) +- Update the subgraph specs to use the latest API versions (@paulrberg) +- Use strict mode in React apps (@paulrberg) + +### Fixed + +- Fix the `img` tag in default vue template (@paulrberg) + +### Removed + +- Delete the Balancer template (both React and Vue) (@paulrberg) +- Delete the Uniswap v1 template (both React and Vue) (@paulrberg) +- Drop support for Node v13 and below (@paulrberg) + ## [1.7.4] - 2021-12-27 ### Fixed -- IPFS script in package.json in React app. +- Fix the IPFS script in the `package.json` file in the React template (@paulrberg) -## [1.7.3] - 2021-12-27 [YANKED] +## [1.7.3] - 2021-12-27 + +_This release was unpublished from npm due to a error in the `package.json` file_ ### Fixed -- IPFS deploy script (see [#179](https://github.com/paulrberg/create-eth-app/issues/179)) +- Fix the IPFS deploy script ([#179](https://github.com/paulrberg/create-eth-app/issues/179)) (@paulrberg) ## [1.7.2] - 2021-11-21 ### Fixed -- Include "gitignore" file in dist bundle (see [#175](https://github.com/paulrberg/create-eth-app/issues/175)) +- Include "gitignore" file in dist bundle ([#175](https://github.com/paulrberg/create-eth-app/issues/175)) (@paulrberg) ## [1.7.1] - 2021-09-20 ### Fixed -- Pin version of `url-exist` dependency to 2.0.2 to fix [#162](https://github.com/paulrberg/create-eth-app/issues/162) -- Types for `update-check` +- Pin version of `url-exist` dependency to 2.0.2 ([#162](https://github.com/paulrberg/create-eth-app/issues/162)) (@paulrberg) ## [1.7.0] - 2021-09-14 ### Added -- New links in the default Vue template -- User info in the wallet button with ENS support via [PR #146](https://github.com/paulrberg/create-eth-app/pull/146) +- Add links in the default Vue template (@paulrberg) +- Add user info in the wallet button with ENS support ([#146](https://github.com/paulrberg/create-eth-app/pull/146)) (@makoto, @paulrberg) ### Changed -- Change `module` to `commonjs` in `tsconfig.json` -- Rename `NETWORK_NAME` variable to `NETWORK` -- Replace the "Disconnect Wallet" label with the user info -- Set initial version of default React and Vue templates to "1.0.0" -- Sort imports -- Upgrade dependencies in default React and Vue templates -- Wrap `web3Modal` instance in `useMemo` hook - -### Fixed - -- Parsing of GITHUB_REF when it has a prefix like `refs/heads/` +- Replace the "Disconnect Wallet" label with the user info (@paulrberg) +- Upgrade dependencies in default React and Vue templates (@paulrberg) +- Wrap `web3Modal` instance in `useMemo` hook (@paulrberg) ### Removed -- Bespoke configuration for Solidity in `.prettierrc` -- Redundant `nohoist` field in top-level `package.json`, which fixes [issue #139](https://github.com/paulrberg/create-eth-app/issues/139) -- The "www" prefix from links in the default Vue template +- Remove redundant `nohoist` field in top-level `package.json` + ([#139](https://github.com/paulrberg/create-eth-app/issues/139)) (@paulrberg) +- Remove the "www" prefix from links in the default Vue template (@paulrberg) ## [1.6.5] - 2021-05-26 ### Fixed -- Install `core.js` missing dependency in vue handlebars template, which fixes [issue #104](https://github.com/paulrberg/create-eth-app/issues/104) +- Install `core.js` missing dependency in vue handlebars template + ([#104](https://github.com/paulrberg/create-eth-app/issues/104)) (@paulrberg) ## [1.6.4] - 2021-05-25 ### Fixed -- Yarn workspaces command issue, as patched by @heronblade via [PR #134](https://github.com/paulrberg/create-eth-app/pull/134) +- Fix the yarn workspaces command bug ([#134](https://github.com/paulrberg/create-eth-app/pull/134)) (@joshuabyler) ## [1.6.3] - 2021-05-14 ### Fixed -- Warning caused by duplicate `body` tag, which fixes [issue #55](https://github.com/paulrberg/create-eth-app/issues/55) +- Fix the warning caused by duplicate `body` tags ([#55](https://github.com/paulrberg/create-eth-app/issues/55)) (@paulrberg) ## [1.6.2] - 2020-12-20 ### Fixed -- The infinite re-render bug, as reported and patched by @gasolin with [PR #92](https://github.com/paulrberg/create-eth-app/pull/92) +- Fix the infinite re-render bug ([#92](https://github.com/paulrberg/create-eth-app/pull/92)) (@gasolin) ## [1.6.1] - 2020-11-20 ### Added -- Balancer template, as per [PR #98](https://github.com/PaulRBerg/create-eth-app/pull/98) -- mStable template, as per [PR #97](https://github.com/PaulRBerg/create-eth-app/pull/97) -- [Internal] Comprehensive unit and integration tests with good coverage of the repo, as per [PR #86](https://github.com/PaulRBerg/create-eth-app/pull/86) -- [Internal] New [env.ts](https://github.com/PaulRBerg/create-eth-app/tree/v1.6.1/src/helpers/env.ts) helper that deals with environment variable management +- Add Balancer template ([#98](https://github.com/paulrberg/create-eth-app/pull/98)) (@TomAFrench) +- Add mStable template ([#96](https://github.com/paulrberg/create-eth-app/pull/96)) (@paulrberg) ### Changed -- Refactor web3Modal code as a React Hook, [courtesy](https://github.com/PaulRBerg/create-eth-app/pull/79) of @gasolin -- Rename "dist" to "build" in Vue.js templates, as per [PR #77](https://github.com/PaulRBerg/create-eth-app/pull/77) -- Strict version tags for the download urls, as per [PR #76](https://github.com/PaulRBerg/create-eth-app/pull/76) -- Upgrade dependencies, both ours and the react and vue template ones -- [Internal] Rename many of the helpers, e.g. `isFolderEmpty` to `directories` -- [Internal] Upgrade to TypeScript v4 -- [Internal] Use ESlint instead of TSLint and fix [issue #74](https://github.com/PaulRBerg/create-eth-app/issues/74) -- [Internal] Use @vercel/ncc instead of @zeit/ncc and fix [issue #21](https://github.com/PaulRBerg/create-eth-app/issues/21) +- Refactor web3Modal code as a React Hook ([#79](https://github.com/paulrberg/create-eth-app/pull/79)) (@gasolin) +- Rename "dist" to "build" in Vue.js templates ([#77](https://github.com/paulrberg/create-eth-app/pull/77)) (@TomAFrench) +- Strict version tags for the download urls ([#76](https://github.com/paulrberg/create-eth-app/pull/76)) (@paulrberg) +- Upgrade dependencies (@paulrberg) ### Fixed -- Duplicate comment about Infura, [courtesy](https://github.com/PaulRBerg/create-eth-app/pull/84) of @gasolin -- [Internal] [Issue #56](https://github.com/PaulRBerg/create-eth-app/issues/56) by setting up CI on GitHub Actions +- Remove duplicate comment about Infura ([#84](https://github.com/paulrberg/create-eth-app/pull/84) (@gasolin) ## [1.5.0] - 2020-09-14 ### Added -- Simple integration of web3Modal to React templates, as per [PR #63](https://github.com/PaulRBerg/create-eth-app/pull/63) +- Integrate `web3-modal` in React templates ([#63](https://github.com/paulrberg/create-eth-app/pull/63)) (@TomAFrench) ## [1.4.1] - 2020-09-03 ### Fixed -- Branch name set back to "develop" after being erroneously set to "staging" when v1.4.0 was shipped +- Set branch name back to "develop" (@paulrberg) ## [1.4.0] - 2020-08-23 ### Added -- New IPFS deployment script allowing publishing of apps with `yarn ipfs`, as per [PR #58](https://github.com/PaulRBerg/create-eth-app/pull/58) +- Add new IPFS deployment script ([#58](https://github.com/paulrberg/create-eth-app/pull/58)) (@TomAFrench) ### Changed -- Update React template component styling to use [styled-components](https://styled-components.com/), as per [PR #51](https://github.com/PaulRBerg/create-eth-app/pull/51) -- Update the location of subgraph query definitions, as per [PR #50](https://github.com/PaulRBerg/create-eth-app/pull/50) -- Update the `@uniswap/sdk` version to v3.0.2, as per [PR #52](https://github.com/PaulRBerg/create-eth-app/pull/52) +- Update React template component styling to use `styled-components` + ([#51](https://github.com/paulrberg/create-eth-app/pull/51)) (@TomAFrench) +- Update the location of subgraph query definitions ([#50](https://github.com/paulrberg/create-eth-app/pull/50)) (@TomAFrench) +- Update to `@uniswap/sdk`v3.0.2 ([#52](https://github.com/paulrberg/create-eth-app/pull/52)) (@TomAFrench) ### Fixed -- Incorrect package names in certain templates' READMEs fixed, as per [PR #54](https://github.com/PaulRBerg/create-eth-app/pull/54) +- Fix incorrect package names in READMEs ([#54](https://github.com/paulrberg/create-eth-app/pull/54)) (@TomAFrench) ## [1.3.1] - 2020-07-30 ### Changed -- The Compound template, as per [issue #39](https://github.com/PaulRBerg/create-eth-app/issues/39) +- Update the Compound template ([#39](https://github.com/paulrberg/create-eth-app/issues/39)) (@paulrberg) ### Fixed -- Bug in Aave template, as per [PR #46](https://github.com/PaulRBerg/create-eth-app/pull/46) -- Incorrect paths in .gitignore, as per [5eabf30](https://github.com/PaulRBerg/create-eth-app/commit/5eabf30a664b68b66b28754e542b791b598249bd) +- Bug in Aave template ([#46](https://github.com/paulrberg/create-eth-app/pull/46)) (@paulrberg) +- Incorrect paths in .gitignore ([#43](https://github.com/paulrberg/create-eth-app/pull/43)) (@TomAFrench) ### Removed -- TypeScript as a dev dependency in the React app, as per [issue #41](https://github.com/PaulRBerg/create-eth-app/issues/41) +- Remove dependency on TypeScript from React template ([#41](https://github.com/paulrberg/create-eth-app/issues/41)) (@paulrberg) ## [1.3.0] - 2020-07-19 ### Added -- Four DeFi templates: Kyber, Maker, Synthetix and Uniswap V2, settable as values for the `--template` command-line argument +- Add four new DeFi templates: Kyber, Maker, Synthetix and Uniswap V2 (@paulrberg) ### Changed -- Refactor the template system, which is now a "template of templates" built with - [handlebars.js](https://handlebarsjs.com/) as per [issue #30](https://github.com/PaulRBerg/create-eth-app/issues/30) -- Make Uniswap v2 the default template when passing `--template uniswap` -- Upgrade to ethers v5 -- Use only `dependencies` in the frontend app package instead of both `dependencies` and `devDependencies` -- (Contributors) Define the branch whence the templates are pulled as an editable property +- Refactor the template system with Handlebars ([#30](https://github.com/paulrberg/create-eth-app/issues/30)) (@paulrberg) +- Make Uniswap v2 the default template when passing `--template uniswap` (@paulrberg) +- Upgrade to ethers v5 (@paulrberg) +- Use only `dependencies` in the frontend app package instead of both `dependencies` and `devDependencies` (@paulrberg) +- (Contributors) Define the branch whence the templates are pulled as an editable property (@paulrberg) ### Fixed -- Add missing local dependencies, as per [issue #36](https://github.com/PaulRBerg/create-eth-app/issues/36) +- Add missing local dependencies ([#36](https://github.com/paulrberg/create-eth-app/issues/36)) (@paulrberg) ### Removed -- The duplicated React and Vue.js code from the `templates` folder +- Remove the duplicated React and Vue.js code from the `templates` directory (@paulrberg) ## [1.2.0] - 2020-05-09 ### Added -- New command-line argument: `--framework` -- Vue.js templates for the default template and all other DeFi templates +- Add Vue.js templates for the default template and all other DeFi templates (@paulrberg) +- Implement new command-line argument: `--framework` (@paulrberg) ### Changed -- Bring [the default template](https://github.com/paulrberg/cea-template) into this repository -- Move the `isUrlOk` function from `templates.js` to its bespoke file -- Rename the Sablier template from "sablier" to "sablier-v1" -- Reorganise the React templates under a new directory called "react" -- Swap the Create React App labels with Create Eth App labels in the default template +- Bring [the default template](https://github.com/paulrberg/cea-template) into this repository (@paulrberg) +- Move the `isUrlOk` function from `templates.js` to its bespoke file (@paulrberg) +- Rename the Sablier template from "sablier" to "sablier-v1" (@paulrberg) +- Reorganize the React templates under a new directory called "react" (@paulrberg) +- Swap the Create React App labels with Create Eth App labels in the default template (@paulrberg) ### Removed -- The `downloadAndExtractTemplate` function in `templates.js` -- The "packages" section in the [README](/README.md) +- The `downloadAndExtractTemplate` function in `templates.js` (@paulrberg) +- The "packages" section in the [README](/README.md) (@paulrberg) ## [1.1.1] - 2020-05-09 ### Added -- This CHANGELOG file +- Add a CHANGELOG file (@paulrberg) ### Changed -- New screencast in README, courtesy of [@TomAFrench](https://github.com/TomAFrench) +- New screencast in README ([#19](https://github.com/paulrberg/create-eth-app/pull/19)) (@TomAFrench) ### Fixed -- The workspaces error on Windows, thanks to [@rnbrady](https://github.com/rnbrady) +- Fix the yarn workspaces error on Windows ([#20](https://github.com/paulrberg/create-eth-app/pull/20)) (Richard Brady) ## [1.1.0] - 2020-03-10 ### Added -- New command-line argument: `--template` -- Four DeFi templates to use with the argument above: Aave, Compound, Sablier and Uniswap v1 +- Add four DeFi templates to use with the argument above: Aave, Compound, Sablier and Uniswap v1 (@paulrberg) +- Implement command-line argument: `--template` (@paulrberg) ### Changed -- Set `module` to `ES2015` and `skipLibCheck` to `false` in the root `tsconfig.json` +- Set `module` to `ES2015` and `skipLibCheck` to `false` in the root `tsconfig.json` (@paulrberg) ### Fixed -- Fix minor typos in README +- Fix minor typos in README ([#10](https://github.com/paulrberg/create-eth-app/pull/10)) (Andrew Coathup, Paul Razvan Berg) ## [1.0.0] - 2020-02-15 ### Added -- Initial release of the tool -- The default template +- Initial release of the tool (@paulrberg) +- The default template (@paulrberg) +[1.8.0]: https://github.com/paulrberg/create-eth-app/compare/v1.7.4...v1.8.0 [1.7.4]: https://github.com/paulrberg/create-eth-app/compare/v1.7.3...v1.7.4 [1.7.3]: https://github.com/paulrberg/create-eth-app/compare/v1.7.2...v1.7.3 [1.7.2]: https://github.com/paulrberg/create-eth-app/compare/v1.7.1...v1.7.2 diff --git a/handlebars/react/packages/react-app/src/App.js.hbs b/handlebars/react/packages/react-app/src/App.js.hbs index 2a996722..92fd5de9 100644 --- a/handlebars/react/packages/react-app/src/App.js.hbs +++ b/handlebars/react/packages/react-app/src/App.js.hbs @@ -78,7 +78,7 @@ function App() { Learn React - Learn useDapp + Learn useDapp Learn {{ learn.name }} diff --git a/package.json b/package.json index bf6733f0..8450c684 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "create-eth-app", "description": "Create Ethereum-powered apps with one command", - "version": "1.7.4", + "version": "1.8.0", "bin": "./dist/index.js", "bugs": { "url": "https://github.com/paulrberg/create-eth-app/issues" diff --git a/templates/react/aave/packages/react-app/src/App.js.ctx b/templates/react/aave/packages/react-app/src/App.js.ctx index 7ad8fca8..420ba32f 100644 --- a/templates/react/aave/packages/react-app/src/App.js.ctx +++ b/templates/react/aave/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: tokenBalance } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].tokens.aDAI, abis.aToken),", diff --git a/templates/react/chainlink/packages/react-app/src/App.js.ctx b/templates/react/chainlink/packages/react-app/src/App.js.ctx index e9fa41a0..bda808cb 100644 --- a/templates/react/chainlink/packages/react-app/src/App.js.ctx +++ b/templates/react/chainlink/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: price } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].ETHUSD, AggregatorV3InterfaceABI),", diff --git a/templates/react/compound/packages/react-app/src/App.js.ctx b/templates/react/compound/packages/react-app/src/App.js.ctx index 5971e33e..ef6c681b 100644 --- a/templates/react/compound/packages/react-app/src/App.js.ctx +++ b/templates/react/compound/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: tokenBalance } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].tokens.cDAI, abis.tokens.cDAI),", diff --git a/templates/react/default/packages/react-app/src/App.js.ctx b/templates/react/default/packages/react-app/src/App.js.ctx index 8295ccf0..bb446b55 100644 --- a/templates/react/default/packages/react-app/src/App.js.ctx +++ b/templates/react/default/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: tokenBalance } =", " useCall({", " contract: new Contract(addresses.ceaErc20, abis.erc20),", diff --git a/templates/react/kyber/packages/react-app/src/App.js.ctx b/templates/react/kyber/packages/react-app/src/App.js.ctx index 935e009a..288576de 100644 --- a/templates/react/kyber/packages/react-app/src/App.js.ctx +++ b/templates/react/kyber/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: exchangeRate } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].kyberNetworkProxyV2, abis.kyberNetworkProxyV2),", diff --git a/templates/react/maker/packages/react-app/src/App.js.ctx b/templates/react/maker/packages/react-app/src/App.js.ctx index 099b02d8..17aaa147 100644 --- a/templates/react/maker/packages/react-app/src/App.js.ctx +++ b/templates/react/maker/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "// ilk = collateral in Maker jargon. The code below pulls data for the ETH collateral.", "const { error: contractCallError, value: ilk } =", " useCall({", diff --git a/templates/react/mstable/packages/react-app/src/App.js.ctx b/templates/react/mstable/packages/react-app/src/App.js.ctx index e7431ea8..827e62d3 100644 --- a/templates/react/mstable/packages/react-app/src/App.js.ctx +++ b/templates/react/mstable/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: mUsdTotalSupply } =", " useCall({", " contract:new Contract(addresses[MAINNET_ID].tokens.mUSD, abis.mAsset),", diff --git a/templates/react/sablier-v1/packages/react-app/src/App.js.ctx b/templates/react/sablier-v1/packages/react-app/src/App.js.ctx index 4cf87f99..fa2ca2b7 100644 --- a/templates/react/sablier-v1/packages/react-app/src/App.js.ctx +++ b/templates/react/sablier-v1/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: nextStreamId } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].sablier, abis.sablier),", diff --git a/templates/react/synthetix/packages/react-app/src/App.js.ctx b/templates/react/synthetix/packages/react-app/src/App.js.ctx index 845ba2bc..a1c7947d 100644 --- a/templates/react/synthetix/packages/react-app/src/App.js.ctx +++ b/templates/react/synthetix/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: tokenBalance } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].tokens.SNX, abis.tokens.SNX),", diff --git a/templates/react/uniswap-v2/packages/react-app/src/App.js.ctx b/templates/react/uniswap-v2/packages/react-app/src/App.js.ctx index 51d3bd7b..d6eb6491 100644 --- a/templates/react/uniswap-v2/packages/react-app/src/App.js.ctx +++ b/templates/react/uniswap-v2/packages/react-app/src/App.js.ctx @@ -1,6 +1,6 @@ { "contractCall": [ - "// Read more about useDapp on https://usedapp.readthedocs.io/", + "// Read more about useDapp on https://usedapp.io/", "const { error: contractCallError, value: reserves } =", " useCall({", " contract: new Contract(addresses[MAINNET_ID].pairs[\"DAI-WETH\"], abis.pair),",