GithubHelp home page GithubHelp logo

open-dollar / od-app Goto Github PK

View Code? Open in Web Editor NEW
6.0 6.0 4.0 17.84 MB

Home Page: https://app.dev.opendollar.com

Earthly 0.07% JavaScript 2.00% TypeScript 97.36% HTML 0.40% CSS 0.10% Dockerfile 0.06%

od-app's People

Contributors

0xardy avatar 0xgorilla avatar 0xshaito avatar alekseevaiana avatar cupojoseph avatar dependabot[bot] avatar jahabeebs avatar kai-thompson avatar pi0neerpat avatar piesrtasty avatar seroxdesign avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

od-app's Issues

Styling changes

Heading

image

  • new brand mark
  • Token balance asset name and icon

App page

  • background color change

Vaults list

image

  • Each column is now right-aligned layount
  • risk label is now within the row
  • outer box around rows of vaults is now transparent
  • renamed all "safe" reference to 'vault'
  • Button
  • Row color different

Vault details

image

  • fonts style change to Inter (should be Inter across the whole app)
  • background colors updated
  • Depost + Repay tab switcher buttons moved

Menu bar update

  • Add dollar-value to menu bar. This will always have 3 decimal places.

image

  • Dropdown should be a link, use placeholder for now. Hardcode the values for now, but eventually they'll come from a web3 call

image

  • Rename "Analytics" to "Stats"

image

Vaults page

Vaults row design should be changed to match the figma designs

Create graphs

I added the stats data to the top of the page, and Iana is styling it in #31

We also want to add a graph using the research from #22 and #21

TODO:

  • Decide on which graph to display

  • Price

  • Minted debt over time

Awaiting tx modal missing

After creating an account, there is nothing shown to explain to accept the mm transaction
image

Should show this modal
image

Graphs

Lets research which of these can be easily created using existing data

  • total volume of transfers of token
  • fees earned by the protocol over time
  • current debt of all vaults
  • number of liquidations
  • liquidation $ total amount

for anything requiring subgraph, lets note that in #21

Ideas from https://app.bean.money/

Stats page liquidity data

depends on #60
Depends on open-dollar/od-sdk#6

  • Fetch pool data for OD and ODG from camelot. Include this data in the existing hooks for fetching data
  • Use the SDK to set values for the stats page
    • marketPriceODG
    • marketPriceOD
    • ODETHUniswapLiquidity

image

  • Use the SDK to set OD liquidity values for the header bar.
    • Market price OD
    • liquidity in pool

image

  • Update header bar liquidity dropdown icon from uniswap to camelot

Data fetching

This is more of a research issue. Lets determine where each of these pieces of data is fetched- either directly from the contract, hardcoded in the asset config file (see #4) or via API. From there we can determine what changes we will need to make

  • Asset Price (OSM)
  • Total Liquidation Penaltly
  • Stability Fee
  • HAI Redemption Price
  • Liquidation Price

image

Fetch total vaults

Once we switch to use our version of the contracts, we will be able to call totalSupply() on our ERC721 contract using the SDK

  • Update vaultNFTs on the stats page with ERC721 totalSupply()

image

QA - links, modals, commas

1. Risk label

  • Values for risk should not include the text "Risk"

image

2. Stats link

  • Click for more stats should direct to stats.opendollar.com

3. Vault creation modals

  • During creation, modal should say "creating vault" not "modifying vault"
  • Once the tx is submitted, the modal text needs to be changed from "Adding a new safe" to "Creating a new vault"

image

4. Commas needed across the app

  1. Vault row

image

  1. Create/edit a vault

image

5. Change Accounts to Vaults

image

6. Risk is medium, but showing green label

image

7. View button removed from index page

image

Add it to the Account modal

image

Should open this

image

QA - Home page, Auctions

Home page

  • Remove global stats from home page
  • Remove devlink code from app. Verify that styling / theme is unaffected

Auctions

  • Collateral auction row is blocking FAQ modal

image

  • FAQ rows should be expanded by default

image

  • Updated references of Reflexer to Open Dollar

QA

Update copy here. How do we make this more clear?

  • Create a vault smart contract
  • The vault smart contract uses the DSProxy standard and enables sending multiple transactions at once.

image

Reorder components on index page

Connect wallet and create account should be first on the page

image
image

  • Click for more stats should direct to stats.opendollar.com
  • Add config needed for wallet connect and coinbase wallet options

Page updates and routing

/safes pages is now the index page
delete the existing index page
deployed to app.opendollar.com

Stats data research

Continued from #60

  • outstandingOd - Omit for now. total outstanding debt / max global debt limit. Stil waiting on guidance for getting total outstanding debt
  • totalFeesEarned- Omit for now. Not stored in protocol. Must be aggregated using a data indexer?
  • totalCollateralLocked - Omit for now. For each collateral type, multiply the token balance of collateralJoin by its price
  • feesPendingAuction - Omit for now. MaybeTo: add up remainingAmountToSell for each auction in the collateralAuctionHouse?
    image

Stats styling

I added stats information in #30

image

image

  • Please apply styling to improve the look. The font colors should match our brand styling
  • Create a loading spinner like we have in keyp, using the new OD logo. Use the spinner in the loading state
  • Change "RAI" to "OD"

To get ideas for layout, you can use the app from where I took this code: https://github.com/UseKeyp/od-stats-dashboard/blob/main/app/page.js . The image below is just for example, you can design it however you see fit.

image

Update sdk with contract addresses

Create a configuration file which accepts a network and returns the contract addresses for each piece of the protocol

Compile the existing contract addresses and start with those, then lets add our own for optimism-goerli from #web3 channel

Stats page

  • Update the stats page "analytics" boxes to new design.
  • Please create a plan detailing each box, where the data is coming from, and which pieces of data are currently missing.

image

Display amount dollar value

Currently only the price of the asset is shown.

Determine and display the price of the input amount as well, which we will display according to design (red box)

For now, just fetch the price info. We'll make the FE part in a separate issue

image

image

Update tables

  • Update tables styling
  • Existing tooltip should appear on hover chart column labels
  • Move SystemCoin and ProtocolToken to the top of the list

image

Switch network improvement

The prompt to switch networks should call the Metamask RPC to switch networks, rather than direct the user to chainlist

image

Change HAI to OD

Our stable token is named "OD" (this may change)

The app should be updated to display OD instead of HAI

Image

Create vault copy

Update copy

  • Create Vault Handler
  • The vault handler contract enables sending multiple transactions at once. It is the same DSProxy used by Maker and Balancer.
  • (Button) Create Vault Handler
    image

Token updates

Ensure the token icon and name is updated when the new sdk is installed

image

Add OD button

  • ensure its the correct token
  • Button should disappear once the token is added

image

Fork sdk and add token options

Similar to #13 but for contracts

Optimism-Goerli options:

OP - Optimism: 0x4200000000000000000000000000000000000042
WETH - Wrapped ETH: 0x4200000000000000000000000000000000000006
wBTC - Wrapped Bitcoin: 0xf1fdb809f41c187ce6f2a4c8cc6562ba7479b4ef
Stones - 0x4fc4cb45a812ae5d85be39b6d7fc9d169405a31f

Optimism (use the existing values from the app)

stETH - Lido Staked ETH
rETH - Rocket Pool ETH
and more...

Note: more may be added in the future

TODO

  • Get contract addresses for each asset
  • Create a configuration file which accepts a network and returns details for name, symbol, decimals, contract address

Transaction history

  • Determine why historical transactions are not displayed for Your transactions will appear here... on profile
Screen Shot 2023-07-21 at 4 23 25 PM

Make header responsive

When reducing a screen size, navigation panel makes overlayed with other elements.

Screen.Recording.2023-08-16.at.9.59.54.AM.mov

Global styling updates

Heading

  • new brand mark
  • Token balance asset name and icon

App page

  • background color change

Vaults list

  • Each column is now right-aligned layount
  • risk label is now within the row
  • outer box around rows of vaults is now transparent
  • renamed all "safe" reference to 'vault'
  • Button
  • Row color different

Vault details

  • fonts style change to Inter (should be Inter across the whole app)
  • background colors updated
  • Depost + Repay tab switcher buttons moved

Global styling

  • border radius change to 8

Optimism Goerli new account bug

Steps to reproduce:

  1. Create a proxy on https://optimism-goerli.opendollar.com/#/safes
  2. Attempt to open a vault (safe) would not let me- because I didn't have an account
  3. refresh the page, just get this loading screen forever, and the following console logs
Duplicate definition of ModifyParameters (ModifyParameters(bytes32,uint256), ModifyParameters(bytes32,address), ModifyParameters(bytes32,bytes32,uint256), ModifyParameters(bytes32,bytes32,address)) [index.ts:182:20](https://optimism-goerli.opendollar.com/static/node_modules/@ethersproject/logger/src.ts/index.ts)
Duplicate definition of ModifyParameters (ModifyParameters(bytes32,bytes32,address), ModifyParameters(bytes32,uint256), ModifyParameters(bytes32,bytes32,uint256)) [index.ts:182:20](https://optimism-goerli.opendollar.com/static/node_modules/@ethersproject/logger/src.ts/index.ts)
Duplicate definition of ModifyParameters (ModifyParameters(bytes32,uint256), ModifyParameters(bytes32,address)) 2 [index.ts:182:20](https://optimism-goerli.opendollar.com/static/node_modules/@ethersproject/logger/src.ts/index.ts)
Duplicate definition of ModifyParameters (ModifyParameters(bytes32,address), ModifyParameters(bytes32,uint256)) [index.ts:182:20](https://optimism-goerli.opendollar.com/static/node_modules/@ethersproject/logger/src.ts/index.ts)
Duplicate definition of TransferCollateral (TransferCollateral(address,uint256,address,uint256), TransferCollateral(address,bytes32,uint256,address,uint256)

image

Wallet options

Add config needed for wallet connect and coinbase wallet option

QA - Menu

  • On mobile, logo is too small

image

  • Mobile menu: remove top section "welcome to reflexer section"

image

  • Mobile menu: remove icons for each link

  • Mobile menu: add ability to close the menu bar with "X" icon in the top right

  • Mobile menu: add OD market price, OD balance
    image

  • (Sascha) Token balance updates

    • should be a wallet icon, not the token icon
    • change to dropdown, instead of "add" button
    • Click to add token to wallet
      image

QA Vault details

Dollar value should be below token amount

image

Remove token from label

image

Right-align risk
Dollar values should remain below each value (including the after one)
After collateral component should be to the right of the collateral ratio
After collateral value font color should be blue

image

Confirm Transaction Details

Confirm Transaction Details appears when creating a new safe

  • Update the logo in the top
  • Update button color
  • Other changes pending design input

image

  • Update the spinner here to be our custom spinner

image

Fix local safe creation

Local safe creation has been throwing an error -- no gas popup occurring from Metamask to confirm a transaction--it fails immediately

error

fixed by cherry picking from main and updating package.json

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.