## HAI App UX / UI Dev ### Project Overview HAI is a decentralized, multi-collateral, community governed, and controlled peg RAI fork stablecoin built on Optimism. ### Technical Overview - **General** - App is a Typescript app built on the [Create React App](https://create-react-app.dev/) framework. - App is a fork of the original [Reflexer App Repo](https://github.com/reflexer-labs/geb-app) - Interaction with deployed HAI contracts is done through the HAI SDK, which is an [npm package](https://www.npmjs.com/package/@hai-on-op/sdk) - npm package is built and released from [HAI SDK repo](https://github.com/hai-on-op/sdk) and installed as a dependency to the app - Keepers are currently a set of scripts in a standalone repo. These would be run on something like an EC2 instance - Keepers are in the process of being migrated to Gelato - **Technology Stack and Tools** - Prod / Staging apps are deployed on Vercel - RPC Provider - Alchemy - Styling - Main App - Styled Components (legacy from Reflexer app) - Splash Page - Tailwind - web3 - ethers / web3-react for provider - HAI SDK for interacting with deployed HAI protocol - Testing - Jest / Cypress - react-router - create react app framework - yarn ### Resources [HAI App Repo](https://github.com/hai-on-op/app) (We will primarily working here) [HAI System Diagrams](https://link.excalidraw.com/readonly/Lu9K2cIKaKYX2EKFKxli) [HAI Technical Docs]() [HAI Tetsnet App](https://www.letsgethai.com/#/app) [HAI Deployed Testnet Contracts](https://github.com/hai-on-op/core/blob/dev/script/GoerliDeployment.s.sol) [HAI Github Org](https://github.com/hai-on-op) [HAI SDK Repo](https://github.com/hai-on-op/sdk) [HAI Core Contracts Repo](https://github.com/hai-on-op/core) [HAI Keeper Scripts](https://github.com/hai-on-op/scripts) ### Project Scope and Requirements - **Update splash page design** - **Complete update of App UI design** - Design of main app pages / components / analytics page - Migrate from styled components to tailwind as part of this process - **UX Improvements** - General UX - The app feels targeted at power users. There are a lot of technical concepts the user is currently assumed to be familiar with. - Onboarding experience - Currently user's land on a page with a CTA saying to connect a wallet / create a safe with no other context on what the app is or what to do. - **Integrate auxilary stats dashboard** - We have a standalone [stats dashboard](https://dashboard.reflexer.finance/) ([code repo](https://github.com/hai-on-op/hai-stats-dashboard)) that is currently used to view SAFE / user data for Reflexer. - This data is provided by a subgraph from the The Graph which is unique to Reflexer. - When the contracts were forked many of the method names and signatures changed. So a new graph would need to be created for the integrated dashboard. - **Additional Items ???** - Current routing uses the react-router hash router so all urls are of the format `/#/[route]` - This is legacy from the original Reflexer app - This is ugly and I'd like to use a different router from react-router so the `#` isn't always in the url ### Roles and Responsibilities - **HAI Core** - Luke - Overseeing project - Coding / UI dev where needed - Code reviews - Communication w/ Wonderland Dev Team (they did the fork dev work) - This could be answering any questions about the web app or changes that were made on the fork. - Reza - General comms and coordiantion - UI / UX Input / Feedback - Kingfish - Answering any questions about the economics / tokenomics / finance piece of th app. - **Number Group** (Not sure who does what) - Ryan -> Dev - Drew ? - Zak ? - Spector -> UI / design ### Development Process - Code contribution - Can either fork repo and submit pull requests back to base repo or add you all to the github org so you can create PRs in the main repo - The latter might be preferrable as that will give us preview staging deploys for PRs which we wouldn't get from a fork ### Next steps ...