KanbanMail

A Kanban board for your emails! βœ¨πŸ’Œ

Finally killed this massive chunk of code that was copy-pasted from a different part of the file and had to be manually kept up to date with the original πŸ˜…πŸ˜…πŸ’ͺ

Paul

IwillRefactorItLaterTeam πŸ˜‚πŸ˜‚

0 Likes
Paul

vueJs <3

0 Likes

Created removeDuplicates function so that Trash action count is correct

Updated changeEmailColumn and changeAllEmailsByColumn to use batch modifiers

Updated context menu to use batch modifiers! (doing bulk actions will be much faster)

Made all modifiers take an array of email objects and use batchModify instead of just changing one email

Fired all batch requests at the same time in getMessagesArrayFromIDs and used Promise.all, it's so much faster than waiting for each one to complete before firing the next!

Created apiActions.gmail.getMessagesArrayFromIDs function which returns an array of message objects from an array of message IDs. It fetches them in batches of 100 to make things faster.

Created an apiActions.gmail.getMessageIDs function that actually supports pagination!

Got threads to work by including References header & threadId in mesage request!

Don't add Re: to the subject if it's a Gmail account so everything will be threaded nicely

Created getLatestGitInfo cloud function that gets the latest commit ID & the latest tag name

Replaced caches.match with my own custom function that prefers dynamic cache over static cache

Got service worker to return latest index.html from dynamic cache instead of the one that was first put in static cache

Got Font Awesome working offline!!

Ethan Author

Yeah I didn't expect it to be so easy!!

0 Likes

Created Gmail OAuth process demo for KanbanMail's reverification – youtu.be/Uj5uSi0pHBU

Replaced Offline.js with my own custom solution that works much better

Fetch kanbanmail.app/connection-test every second to check internet connection status