Juicebox frontend application.
- Mainnet: https://juicebox.money
- Rinkeby: https://rinkeby.juicebox.money
- Clone the respository:
git clone https://github.com/jbx-protocol/juice-juicehouse.git
cd juice-juicehouse
-
Create an
.env
file in the root directory which mirrors the.example.env
file. -
Install dependencies and start the app:
yarn install
yarn start
The frontend has two different providers that provide different levels of access to different chains:
readProvider
: used to read from contracts on network of injected provider (.env
file points you at testnet or mainnet)signingProvider
: your personal wallet, connected to via Blocknative.
Frontend application(s) are deployment automatically on pushes to main
using Fleek.
The app uses the SemanticTheme
pattern defined in src/models/semantic-theme, which allows mapping style properties to any number of enumerated ThemeOption
s. These properties are defined in src/constants/theme. Theme styles can be accessed via ThemeContext
defined in src/contexts/themeContext and instantiated in src/hooks/JuiceTheme, or via CSS root variables.
The app also relies on antd components. To make Antd compatible with SemanticTheme
, overrides are defined in src/styles/antd-overrides.