Download here
Dupdates
On my end, the major pushes this week were on cookie management - getting each WebView (tab) to pull from a pool of cookies so that they had shared sign ins, history, etc…
An extension of this was enabling a minimum implementation of profiles (two profiles with different cookie pools) & private browsing in a pop up windows.
I also enabled keyboard shortcuts CMD+T and CMD+W to open and close new tabs, respectively. This was table stakes for me in using a browser so excited that this is working.
I was also able to tackle a minimum implementation of history in the top tab bar - it’s not great, but it shows history for a given tab when you click
My Plight
Unfortunately, much of my progress was taking ‘breaks’ from my real goal for the week - getting ethereum signing working in the browser in Swift. I made a lot of progress here - I’m able to pull the relevant transaction data form websites and construct and EthereumObject ready for signature - but am getting stuck in actually submitting it to the blockchain. Documentation here is few and far between for Swift implementations, so much of this is just trying what I know works in web3.js (or similar) and seeing if I can get the same principles to apply.
Reflections
After a wonderful break & some time off last week, I am glad that I was able to have some productive output over the past few days. I wasn’t able to tackle my primary goal - but was able to slot in some fun & cool stuff in between. I’m excited to keep this pace moving forward.
The big question now is when to merge back into a stable Dub version - experiments has helped us to move fast (and unironically break things) but there does seem to come a time soon when we want to have Dub as our default dApp browser. Tentatively, we’ve set a goal for the end of the month to finish up functionality for a “Minimum Viable Browser.”
Coming Up
My next big ‘ship’ goal is getting eth sign working, scattering in some small browser improvements in between. Want to integrate Robert’s keychain work, pinch to zoom, more keyboard shortcuts, improved history management, and start looking at data persistence.
Looking forward to another killer sprint; back here next week ✌️