Curve-frontend is a NextJs user-interface application designed to connect to Curve's deployment of smart contracts. This UI application is designed for both the crvUSD and Curve dapps, and utilizes curve-js and curve-stablecoin-api to communicate with the blockchain.
Before you begin, ensure you have met the following requirements:
To install curve-frontend, follow these steps:
git clone https://github.com/curvefi/curve-frontend.git
cd curve-frontend
yarn install
- Copy
.env.sample
from/apps/(loan|main|lend)
and update environment variables:
cp apps/loan/.env.sample apps/loan/.env.development.local
cp apps/main/.env.sample apps/main/.env.development.local
cp apps/lend/.env.sample apps/lend/.env.development.local
- Start development:
yarn dev
Access the application in a web browser:
- Main app: http://localhost:3000
- crvUSD app: http://localhost:3001
- Lend app: http://localhost:3003
To develop against a forked mainnet, connect your wallet to the RPC URL: http://localhost:8545
or whichever port your forked mainnet is using.
This repository is organized as follows:
/apps/main
: This application manages router swaps, pool-specific functions (deposit, withdraw, swap), and pool creation React application./apps/loan
: crvUSD React application./apps/lend
: Lend React application./tests
: DApp tests/packages/ui
: Shared CSS styled components using styled-components./packages/onboard-helpers
: Shared wallet connection using Blocknative's Onboard.
For detailed information on development practices and usage of new libraries, please refer to our Development Guide.
For testing the DApp application, follow these steps:
- Navigate to the
tests
directory:
cd tests
- Follow the instructions in the
README
file located in thetests
directory.
If you have any questions, please contact the dev channel on the Curve Discord
You may also submit an issue on our GitHub Issue Tracker.
To contribute to curve-frontend, follow these steps:
- Fork this repository.
- Create a branch:
git checkout -b <branch_name>
. - Make your changes and commit them:
git commit -m '<commit_message>'
- Push to the original branch:
git push origin <project_name>/<location>
- Create the pull request.
Alternatively see the GitHub documentation on creating a pull request.
This project is licensed under the MIT license.