---
# System prepended metadata

title: Hub App Scaffolding and Planning (4/19/22)
tags: [' planning', ' hub app', v3]

---

---
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