Open Collective
Open Collective
Loading
August 2021 Update
Published on August 3, 2021 by Andre Garzia

July has been a really strong month for Patchfox even if we didn't make a new release. The changes I have been working on are quite large, and they haven't reached a point where I can consider them complete enough for shipping. These changes should all be included in the next release, which should happen in August.

Among the various changes, these are the highlights:


Support Multiple Identities / Connections.


Recent work has added support for using multiple identities and connections with Patchfox. I have enhanced the settings package to allow you to add as many identities as you want.

An account switcher is provided in the top-right corner of the UI. Selecting an identity there will open a new tab using that identity.

Developers can now use ssb.platform to detect what is the current running backend, and use the supportedPlatforms property in the package declaration to make sure the package only loads for supported platforms.

Be aware that the only supported backend is nodejs-ssb at the moment. Trying to add a go-ssb or browser-ssb identity will work, but connecting to them will not work as expected since the packages have not been patched to handle them. Baby steps, baby steps...

I have uploaded a video showing how multiple identities work to YouTube. I hope you enjoy it.

New Design Language


I'm changing the design language used to make Patchfox more pleasant to use and develop. This requires me to rework every single view on the system but I think it will be worth it. It will make the UI cleaner and more easy to theme.

Here is a sneak peek of the current work in progress version.

Funding


Patchfox OC received 6,000 EUR grant from the Handshake Council to keep developing the WebExtension according to the Roadmap.

Thanks to Erick and all the others involved in this lengthy and stressful process, I’m very grateful for your work and will put these funds to good use.

Other Fixes & Improvements

  • Made packages more backend agnostic by removing direct calls to nodejs-ssb-only features. For cases where this was not possible, made sure they detect what is the current backend before attempting to use such features.
  • Provided ways for package developers to flag which backends their package supports, and also detect the running backend at runtime.
  • Removed hardcoded occurrences of localhost to fetch blobs. Now it uses the same host and port as the remote in settings.