2023 CW 35 - Development Progress

2023 CW 35 - Development Progress

Finally a full week, when I could focus on Contexty. Unfortunately I got a bit sick, and it made me a bit slower than anticipated, but still made very great progress with the features.

Functionality

Gmail plugin started to really show some signs of usability. This week, I have implemented Reply to and made Resource setup easy.

Reply to feature

Let's start with the Reply to functionality. Man can now select Reply from the context menu. Once it's selected, the composer is filled with the information required. Above the composer, in a small box, the original history item is displayed, indicating that the composed message is a reply.

The Gmail plugin is making sure that such messages are handled as replies, and they show correctly even on Gmail UI.

Things to improve:

  1. Reply to composer box is not controlled by the plugin.
  2. 🪲 The values are stored and saved even if the plugin doesn't support that functionality. (e.g. subject)
  3. 🪲 The sent email doesn't have a nicely formatted sender and receiver set. It sets only the email address but not the name.
  4. Add the content of the original message as quoted text to the composer.

The other big change is around the Resource setup. In Gmail plugin case, Resource-s are just filters on emails that make sure that the right emails are delivered to the right activity. Even though the Resource creation was working, there was only one single filter supported. This week, I have added more filters, adjusted the UI to support it and made a Resource to handle multiple Filter Options at the same time. Whilst in the old structure, one could only filter by a single condition, in the new version, multiple conditions can be added.

Resource setup

In order to make life easier, a context menu is displayed when one moves a history item by drag and drop. A Move and filter... menu item is populated by the Gmail plugin when the moved item is a Gmail letter. This menu item, show a similar Resource setup UI. Via that UI, the user can now create a Resource based on the email that just have been moved.

This comes really handy when one is organizing the emails from the inbox. Once the email is moved into the right Activity the user can straight set up a Resource filtering future similar emails. The Resource setup gets suggestions what filter options should / could be used.

But not only the drag and drop context menu got this menu item. One can also select any history item (coming from Gmail) and Define filter... from the context menu.


The third big change is around loading the History. I have implemented infinite scroll. Now the user can scroll up and get more and more items in the history. The system can also navigate to a history item with a specific id and the UI will automatically will scroll it onto the screen. This feature is used by the Reply to box on the History items or Composer.

This to improve:

  • There is no easy way to scroll to the end. I have to add a 'Scroll to the end' and a 'Scroll to last read' functionality.

What was finished

  • ✅ Cron based fetching of integrations
  • Reply functionality on History Items
  • ✅ Filter e-mails by thread, label and matching subject
  • ✅ Improve scrolling behaviour on the UI
  • ⏫✅ Edit and Delete Resource
  • ⏫✅ Better loading and error handling in History.

What comes next?

The next week, I would like to iron out some of the details and prepare for the next push. There are different directions I can take, and I need to evaluate what path I want to follow. Without going into the details, I am thinking if I should start developing a new plugin and what is should be. Alternatively, the platform itself could be made better. The latter would save time with the plugin development later. The former would allow me to start giving the product to beta testers.

  • Open history at the last read item
  • Better error handling (probably with i18n support)
  • Reply to composer box is not controlled by the plugin.
  • 🪲 The values are stored and saved even if the plugin doesn't support that functionality. (e.g. subject)
  • 🪲 On collapsing a History Item, the page jumps away.
  • 🪲 Fetching is always applying the filters and moves e-mails 'back'.
  • 🪲 Old Gmail integration - where historyId might be off (deleted?) is returning 404
  • 🪲 The sent email doesn't have a nicely formatted sender
  • 🪲 Gmail plugin: Some emails can't be displayed
  • Select another integration: WhatsApp, Google Meet, Signal, Github, Jira ❓

Backlog

  • Release app and make it available on the website.
  • New integration
  • Apply Contexty colours on the app
  • Make Resource sidebar disappear and only show by clicking a menu item.
  • Favourite menu items and filter based on them
  • Filter items based by Label
  • Display Participants of the Activity

A new integration needs to be selected and the items for that needs to be identified.

Not prioritized future changes identified this week

Some of the items are already moved into the 'What comes next?' section.

  • Add the content of the original message as quoted text to the composer.
  • Add 'Scroll to the end'
  • Add 'Scroll to last read'