---
tags: v3, hub app, planning
---
# Hub App Scaffolding and Planning (4/19/22)
## Patterns to Test
## Where to Start
- Focusing mostly on data fetching (there's a lot here already)
- Can start with low fidelity components and build these out as design builds them out
- This intersects with Jord's work -- we'll be making progress on components as Jord is building the library
- We can create cards to increase the fidelity of the components we identify
### Components and Data Features
- Nav (where are we with the Global Nav?)
- WalletConnect
- No cross links to other apps
- Header
- Incoming from Ceramic
- User name, bio, address/ENS
- Edit Profile link (no design)
- Link to Self.id but do we want to consider using an alternate Profile such as MetaGame's
- Basic Profile:
- in SDK, create ways to fetch Ceramic data by single user (such as for a Profile page)
- `getUserFromCeramic`
- **$HAUS Balance/Price Feed/Display Card:**
- Not always displayed on Profiles
- $HAUS price info
- Fetching $HAUS price data in the SDK
- Inform need for Skynet cache
- `getUserHausBalance`
- SDK: By token contract or by HAUS only?
- Cross chain balances and totals (HAUS only)
- Would we want to be able to link DAOs across chains? If so, could we get a total treasury from this?
- Likely not yet
- Start with HAUS and then expand from there
- Total it inside the frontend
- Consider adding this to the UI features package
- **WalletConnect**
- Consider adding this to the UI features package
- **Proposals*
- Build this for Core UI -> add to the UI features package -> bring back into the Hub App
- **Attestations**
- Still in early alpha
- **DAOs Table**
- `getAllDAOsByUserAddress`
- List of DAOs user is a member of by address
- `name` is only metadata right now
- Can add metadata for the other fields such as `proposalCount`
- Token data -- interact with Gnosis Safe API
- Start looking at the fields in the DAO table
### Token Price Feed / Balances
- How do we want to group together functionality?
- Mirroring the structure of v3 protocol
- Do we spin out another package for token specific functions?
- Fetching not only HAUS but other tokens as well
- `getTokenPriceByContractAddress`
- `getBalanceByAddress`
- user or safe
- `totalValue`
- Interactions with the Gnosis Safe API
### Data
- What would be delivered from the data package to the Hub App?
- Some will require lambdas to calculate -- can start with this
- At what point do we need better aggregation, caching, processing, etc.
## Outputs
- Spec doc similar to the [Summoner App Alpha doc](https://hackmd.io/_HaWUWP-RTmBS_XoxidiEw?view)
- Shared set of user stories between Design and Dev
- What are the core features we want to align on for the first version?
- What are the core things we want users to be able to do on this app?
- Can bring some from this session to our meeting with Ven
## Next Steps
- [x] Define the user stories -> align with Ven -> break into cards
- [x] Scaffolding the Hub App card added to board
- [ ] Stretch: Begin setting up Ceramic fetching
- [x] SDK Package Code Review
## Notes
- Consider how to split out these into packages -- is it all in the SDK?
- Look to Core UI Vaults to inform some of this
- Think about the UX for filtering and sorting and how this may impact the performance on the Explore page