Ethan
Making products people love π₯π
Wrote a blog post about my plans for together.fit! https://ethan.link/blog/the-start-of-together-fit
Auto convert distance & weight measurements based on the user's metric/imperial settings
Shipping live on Shipstreams! https://shipstreams.com/ethan
Had a really productive stream, comments page done! ππ¬ππͺ
Created /workouts/:id route
Livestreamed working on together.fit! https://www.twitch.tv/ethan_the_maker
Created mock data to use until I build the backend
Created TypeScript interfaces for everything. This actually really helped me understand how different concepts were going to interact. TypeScript = β€οΈ!
Bought domain together.fit
Market research π https://twitter.com/Booligoosh/status/1213986314887892992
Brainstorm and flesh out potential new product ππ€
First post on 200 Words a Day! https://200wordsaday.com/words/habits-339555e119565580ae
Started working on the ability to add additional columns
Show indicator of email loading progress (before, users had no idea what was going on other than the loading symbol spinning)
Updated keyboard shortcuts in column change dropdown
Stopped KanbanMail from calling fetchAndPutThreads like 500 times in a row with individual threads when a big history payload comes in lol
Fixed getStripeMetadata relying on window.api
Made doneThreadsNotInArchived literally just threads in Archived with the INBOX label
Changed "Move to Archived" button icon to a tick to differentiate it from Trash
Made Trash button in thread viewer take up both columns
Use changeLabels instead of changeColumn when stripping INBOX & KBM:4: Done
Split IDs into chunks of 999 in modifyLabelsForThreads