Repository containing the contracts and the interface of the CommOwn Shared Wallet
- Clone the repo
git clone -o seed -b main --single-branch https://github.com/commown-shared-wallet/contracts-dapps.git
- Install project dependencies —
yarn install
- Starts a JSON-RPC server —
yarn hardhat node
- Open new terminal
- Position yourself on the frontend directory —
cd frontend
- Install frontend dependencies —
yarn install
- Launch the app —
yarn dev
, it will become available at http://localhost:3000 - Add local network to your metamask wallet
- ChainID —
31337
- Currency —
Ethereum
- Currency Symbol —
ETH
- Currency decimal's —
18
- RPC URL —
http://127.0.0.1:8545/
- ChainID —
INDICATORS
- DONE : ✅ - production
- IN PROGRESS : 🔁 - development
- TO DO : 🚧
RELEASE | DESCRIPTION | STATUS |
---|---|---|
v1.0.x | 🛠️ Settings & Technicals Environnement | ✅ |
v1.1.x | 👛 Connecting to a wallet | ✅ |
v1.2.x | 📦 Creating a CommOwn Shared Wallet & Funds management | ✅ |
v1.3.x | 🦾 Create Pocket & Visualize your assets | ✅ |
v1.4.x | 👨🏾💻 NFT Proposals & Refactoring Pockets | ✅ |
v1.5.x | 🛠️ Security amelioration | ✅ |
v1.6.x | 🤝🏾 State management with redux | 🔁 |
v1.7.x | 💵 Purchase of an NFT | 🚧 |
v1.8.x | ⚡️ Resale of NFT | 🚧 |
v1.9.x | ⚡️ Lending of NFT | 🚧 |
├──
.github
— GitHub configuration including CI/CD workflows
├──
.vscode
— VSCode settings including code snippets, recommended extensions etc.
├──
.husky
— Git Hooks, for code quality
├──
contracts
— Solidity contracts
├──
deploy
— Automatic deployment script
├──
docs
— Contracts documentations
├──
scripts
— Script to deploy contracts
├──
test
— Script to test contracts
├──
frontend
— dapp frontend
├────
artifacts
— compiled artifacts (build-inf, abi...)
├────
src
— react component frontend
├──────
assets
— Assets such as css, sass, img files
├──────
components
— Reusable components for pages and layout
├──────
hooks
— React hooks such as useCommownSW
, useCopy
, etc.
├──────
interface
— Objects description.
├──────
layout
— Reusable page templates
├──────
pages
— Pages of applications
├──────
store
— State Management
├──────
App.tsx
— App Container and Routes
├──────
main.tsx
— Inject app in index.html
├────
types
— Type declaration files for Contracts
├────
index.html
— Application entry point
- Hardhat, ethers.js, web3-react, TypeChain, Waffle
- React, React Router, Redux Toolkit, React Redux, Mantine, Mantine UI, Cypress, Vitest
- TypeScript, ESLint, Prettier, Yarn, Vite
- Github Actions, Vercel, Dependabot, Gist
- Node.js v16 or newer, Yarn package manager
- VS Code editor with recommended extensions
IMPORTANT: Ensure that VSCode is using the workspace versions of TypeScript and ESLint.
yarn prepare
— Install and configure husky hooks systemyarn commit
— Run commitizen command line to receive assistance in drafting commit
npx hardhat accounts
— Prints the list of accountsnpx hardhat compile
— Compiles the entire project, building all and generate documentationsnpx hardhat node
— Starts a JS ON-RP C server on top of Hardhat Networknpx hardhat docgen
— Generate documentations of Smart Contract (NatSpec)npx hardhat check
— Run Solhint for static code analysisnpx hardhat test
— Runs mocha testsnpx hardhat test --parallel
Run tests in parallelREPORT_GAS=true npx hardhat test
— Force report gas for testnpx hardhat coverage
— Check the percentage of tests coveragenpx hardhat clean
— Clears the cache a nd deletes all artifactsnpx hardhat help
— Prints this messagenpx hardhat run scripts/01_deployCommownSWProxyFactory.ts --network localhost
— Deploy CommownSWProxyFactory contract to local networknpx hardhat run scripts/01_deployCommownSWProxyFactory.ts --network rinkeby
— Deploy CommownSWProxyFactory contract to testnet networkTS_NODE_FILES=true npx ts-node scripts/deploy.ts
—
npx eslint '**/\*.{js,ts}'
npx eslint '**/_.{js,ts}' --fix
npx prettier '\*\*/_.{json,sol,md}' --check
npx prettier '**/\*.{json,sol,md}' --write
npx solhint 'contracts/**/_.sol'
—npx solhint 'contracts/\*\*/_.sol' --fix
yarn dev
— Launches the app in development mode onhttp://localhost:3000
yarn build
— Compiles and bundles the app for deploymentyarn preview
— Preview your build app
yarn set version stable
— Bump Yarn to the latest stable versionyarn upgrade-interactive
— Update Node.js modules (dependencies)yarn pnpify --sdk vscode
— Update TypeScript, ESLint, and Prettier settings in VSCode
- uups-proxies-tutorial-solidity-javascript
- Github OpenZeppelino proxy
- UUPS Modern walkthrough
- UUPS vs Transparent & Deploying more efficient proxy
- Old SDK Package from OZ
- UUPS Factory
Made with ♥ by CommOwn Teams.