Frontend application for Open Dollar
https://app.opendollar.com/ Production main branch
https://app.dev.opendollar.com/ Testnet dev branch
For security and resiliency we publish the app as a self-contained Docker image
- Install Docker
- Get the latest Release, eg.
1.7.0 - Run the start command, replacing
<VERSION_NUMBER>with the release
docker run -p 3000:3000 ghcr.io/open-dollar/od-app:<VERSION_NUMBER>
# For example:
docker run -p 3000:3000 ghcr.io/open-dollar/od-app:1.7.0The application will be available on http://localhost:3000
For network Arbitrum Sepolia, use a release candidate (eg. 1.2.0-rc.abc123) version from the container registry
Install dependencies
yarnSetup the environment by creating the file .env.development.local:
cp example.env .env.development.localStart the app
yarn startIf you have issues, check you are using node v16
To have the app default to a different network when a wallet is not connected:
- Create a file and name it
.env.development.local - Change
REACT_APP_NETWORK_IDto"420" - Change
REACT_APP_NETWORK_URLto e.g."https://opt-goerli.g.alchemy.com/v2/{YOUR_INFURA_KEY}" - Change
REACT_APP_FALLBACK_SUBGRAPH_URLto actual values in the formathttps://${GRAPH_NODE_PLAYGROUND_BASE_URL}/subgraphs/name/NAME_OF_YOUR_SUBGRAPHThe current value of theGRAPH_NODE_PLAYGROUND_BASE_URLin the Render-deployed subgraph can be found in the Render dashboard under the Environment section of the NGINX Render service. The subgraph name can be queried in the Render database service by following theREADME.mdinstructions in the od-subgraph repo.
When a request fails to our hosted subgraph in The Graph, we will automatically retry the request to our Render-hosted subgraph
in the querySubgraph SDK function. Make sure you've set REACT_APP_FALLBACK_SUBGRAPH_URL as a .env variable to ensure
there's a fallback subgraph to query.
yarn test:e2e
yarn testFor Arbitrum-Sepolia:
docker build --build-arg REACT_APP_NETWORK_ID=421614 \
--build-arg REACT_APP_NETWORK_URL=https://arbitrum-sepolia.blockpi.network/v1/rpc/public \
--build-arg REACT_APP_WALLET_CONNECT_PROJECT_ID=fb1d2dba2f157d3d719134e58dda98a7 \
-t open-dollar/od-app .For Arbitrum One:
docker build --build-arg REACT_APP_NETWORK_ID=42161 \
--build-arg REACT_APP_NETWORK_URL=https://arbitrum.blockpi.network/v1/rpc/public \
--build-arg REACT_APP_WALLET_CONNECT_PROJECT_ID=fb1d2dba2f157d3d719134e58dda98a7 \
-t open-dollar/od-app .