2023 CW 39 - Development Progress

2023 CW 39 - Development Progress

Yet another week with a 🤒 sick kid at home. 💪 Still made quite a bit of progress and managed to get my first beta tester - apart from me - using the product. 🤿 But let's dive into the details.

Functionality

As I'm getting the product ready for beta testing, I have mostly focused on bug fixing and usability improvements. The biggest feature adds are:

  • Reactions
  • Move activity
  • WhatsApp Plugin: Create Sub Activities per chat
Reactions ❤️

I have added Reactions to the Platform and now a History Item can display them. I have implemented the integration in the WhatsApp Plugin. Currently, there is no support reacting to a History Item. It needs to be developed in the future.

Reactions

Move activity

Another big change that users can now move their Activities with all the Subactivities, History Items and Resources. This allows users to rearrange their Activity Tree. It would be nice, not just to Move, but to be able to Merge activities. It's something, I have to develop in the future.

WhatsApp 🗨️

The WhatsApp Plugin is getting better and better. Apart from displaying reactions from WhatsApp, now it can also support for such 'Catch All' filter, that can create Sub Activities per chat (conversation). With this filter, Contexty can be used as a normal chat client - even though this is not the goal. This feature is nicely complementing the 'Move Activity' feature. The 'Chat Activities' now can be moved under another Activity that actually represents a real task.

Catch All into Subactivities

UI work

As getting ready for the release, I have spent some time making the app a bit easier to use. I have made the composer collapsible. When the content is only read, the composer can stay hidden, it comes only up when a message is being composed.

Collapsed composers

Another change are around the menus. The menus can now display icons in a row, and only the rest folds into a dropdown menu.

Icon Menu

Release

🤦 Unfortunately, I didn't get there to release the app. I have run out of Github Action credits and as it's already the end of the month, I will get some in October.

As part of the Release, I have to turn Contexty project in Google Developer Console into Production mode. In order to do that, I need to do a couple of things, like publishing a Privacy Policy, making a Youtube video, etc. Therefore, I have written the first version of the Privacy Policy, but I still need to do the Youtube video. Until it's done, it doesn't make much sense to publish the app, as it could not connect to Google, unless I add your email address to the 'testers' list. If you are interested, please contact me. I would be thrilled to give you the latest version, so you can play around with it.

What was finished

  • ✅ WhatsApp Plugin: Support for Resource that can create Subactivities per chat
  • ✅ UI Improvements: Hide composer when not used
  • ✅ UI Improvements: Icon menus
  • ✅ UI Improvements: Resources menus
  • ✅🪲 Offline support - currently the plugin make the CPU spin when the computer goes offline.
  • ✅ WhatsApp Plugin: Offline messages
  • ✅ WhatsApp Plugin: Send message to Resource
  • ✅ Release: Get Mac production build working
  • ✅ Release: Get Windows production build working
  • ✅ Release: Privacy Policy v1
  • ✅🪲 Sentry: Sentry got spammed with error in production
  • ✅🪲 Composer: Validation did not allow sending message.
  • ✅ Auto selecting integration when only 1 is available
  • ⚠️ Publish first beta version

Work for next week

Next week I want to focus on the release of the application and to fix the bugs coming back from my friends and family. Apart from that, there are plenty of small usability improvements to make. I want to collect the feedback and react as fast as possible.

📽️ In order to release the app publicly, I have to shoot a video for Google, showcasing the functionality of the app.

In the rest of the time, there are some refactorings that should be done before moving forwards:

  • Rework Resources in order to make use of FilterResource
  • Refactor filtering so moving all items meeting the filter criteria can be implemented.

🎒 Backlog

🏗️ Platform

  • UI Improvements:
    • Apply Contexty colours on the app
    • Add Contexty icon
    • Create easy to access menus (always visible icons)
  • 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
  • Add the content of the original message as quoted text to the composer.
  • 👾 i18n support
  • 🪲 Switching Activity should scroll to the end (or first unread(?))
  • Keyboard shortcuts

⌨️ Composer

  • Navigating by keyboard - e.g. it's very annoying that the tab button jump on the formatting options instead of the message body.
  • 🪲 Recipients are cached per integration, even though integration is not a mandatory field. This needs to be fixed.
  • No attachment and images in the sent message. Something that is not supported by the system yet.

🗨️ WhatsApp

  • No support for deleted message
  • No support for reactions - the system doesn't have an understanding of reactions and the reaction messages are displayed as Not supported message.
  • Reply functionality is not working - I need to store the whole message to make it happen.
  • In general, there is no Chat creation at all.
  • Read by others - this is an information that is not supported by the system.

✉️ Gmail Plugin

  • Contacts
    • Sync Google contacts into Contexty
  • Support for Mailing Lists - create Subactivity per mailing list

🚀 Release

  • Release it❗
  • 🚧 Change webpack configuration to avoid problems with typeorm migrations.

New items identified during the week

  • Platform: React to History items (with WhatsApp integration)
  • Platform: Merge Activities
  • Refactor filtering so moving all items meeting the filter criteria can be implemented.
  • 🪲 WhatsApp Plugin: Status broadcast is coming in as normal message
  • Platform: Get notification from the item you are in.
  • UI: Improve displaying media
    • Add video player
    • Add audio player
    • make message read by clicking media
    • View media in big