The project consists largely of these parts:
- Ledger app wallet
- grin-wallet integration
- Live Ledger wallet app (TypeScript and React are used in the starter project)
- integration tests (I do these in Rust)
These are the main actions that the hardware wallet should be involved with:
- Build coinbase
- Build output
- Getting slatepack proof address
It is hard to estimate or put a number percentage on it. I am not done with the previous elements, far from it. I have ‘lost’ quite some time on issues that weren’t as important; some issues with the handling of errors and traits in Rust.
For example (this can sound too technical), I wanted to make my integration test functions generic enough that it can use the hardware wallet client library, as wel as a Speculos wrapper). But this turns out to be a bit more difficult/time consuming for me at the moment, so I decided to do a more ‘back to basics’ approach.