September 2021 update

AndrΓ© Staltz

Hey backers,

It's Manyverse day again! There's nothing special about the 5th day of the month, but it's been a tradition to send the newsletter on this day, so let's stick to it.

This month's release has many small features and bug fixes which add up to be pretty significant. Here's the longer-than-usual list for version 0.2109.3:

  • πŸŽ‰ Feature: hashtags
  • πŸŽ‰ Feature: support SSB URIs in the search box
  • πŸŽ‰ New gradient style to replace "Read more" button
  • βœ… (iOS) Bug fix: top bar should not glitch when scrolling
  • βœ… Bug fix: search field should not stall
  • βœ… Bug fix: format of data on RawMessage screen
  • πŸ”· Support language dialects fallback
  • πŸ”· (Android) Support animated GIFs
  • πŸ”· (Android) Disable support for Android 5.1 and lower
  • πŸ”· Improve header style on the Profile screen
  • πŸ”· Improve how often friend requests appear
  • πŸ”· Improve performance of database indexing
  • πŸ”· Improve style of the 8-emoji reaction menu
  • πŸ”· Improve the style of message placeholders
  • πŸ”· Improve usability of pinch-to-zoom on images
  • πŸ”· Improved translations to Arabic, Chinese, German, Italian

The most noticeable is the long-awaited support for hashtags.

A graphic design of a collage of several hashtags such as #photography, #new-people, #teamgary and others, where #hashtags is in the middle and highlighted with a larger font, and #manyverse is a bit lower, highlighted as well

In the app, you can now click on any hashtag and it'll open up the Search screen for that hashtag, showing all threads that contain it. You can also directly use the Search input field to browse through hashtags.

The Search screen made its debut last month, but some users found some bugs with it. Now it has also been fixed to avoid stalled results, should work more reliably now. And, it already supported inputting any SSB ID such as @QlCT...ed25519, but now it also supports SSB URIs such as ssb:feed/ed25519/QlCT....

Spanish users have been requesting that the app is displayed in Spanish regardless if there is no translation specific to their dialect. Previously, Manyverse would show in English if you had set your language to Spanish (Mexican) or Spanish (Chile). In version 0.2109.3, users who set those dialects will get Spanish (Spain) instead of English. The same logic applies for dialects in other languages too.

I could comment on all the features on that list, but I don't want to bore you. Take a look at the list and try the features in the app. My personal favorites are the new profile screen header, and the new "read more" replacement on threads.

However, I should mention a few bad news this time. The Android app size jumped from 40MB to 100MB because we updated our development framework (React Native using a newer verison of the Hermes engine for JavaScript), and we also include a new component built in Rust which takes up some space (although this is also good news because the database indexing got a bit faster! Thanks to @glyph for ssb-validate2-rsjs). The size increase surprised me, but I noticed it only a few hours before making the release, and it was too late to do something about it. Going forwards, we're going to try to split up the app in two: one for armv7 devices and another for armv8 devices. This should have zero drawbacks for users, and would halve the app size.

The other thing is that support for Android 5.1 and lower has been disabled. We've been getting crash reports that Manyverse doesn't work at all on those versions of Android. According to Google Play, several users in Myanmar have such devices, so I spent about one day trying to fix it, but it's hard. I think it's really important to support older devices, so this is a temporary solution. I have a couple other tricks to try, so I promise to get back to this and re-enable the support for Android 5.0 and 5.1.

Svendsolar, an SSB gathering

On a different topic, last weekend Jacob and I attended an SSB meetup in Svendborg (Denmark) with other folks in my NGI Pointer team and many others. We had a good time!

Photograph of 8 people sitting and standing around a rectangular table, indoors, in the evening. On the table, laptops, snacks, drinks. People are looking at the camera and smiling

We had sessions on diverse topics, from the low-level technical details related to our NGI Pointer work, to the high-level discussions about tech giants, capitalism, and social media.

Updates from NGI Pointer

Related to that, our work in the NGI Pointer group is reaching its conclusion. September is our last month. Last month we were very busy working on partial replication, specifically, meta feeds and replication of index feeds. One of the end goals is to deploy these techniques in Manyverse, in order to drastically reduce the amount of data the app needs to process. This should translate into a much better user experience. You all probably know what it means to wait one hour for the app to chew through the data it received. We want to fix that.

It will take a bit more time, though. What we're designing with meta feeds is a significant mental undertaking, so we're not going to rush to put this in Manyverse in September. We are making proof of concepts and preparing the libraries and tools in such a way that it can be put into Manyverse later this year, or early next year.

Oh, and from October onwards, I'll be working full-time on Manyverse! That's thanks to a combination of your donations plus some savings, it should last me about 6 months full-time. The longest I have worked full-time on Manyverse is 3 months, so 6 months is going to be awesome. And who knows, if donations increase, it might be more than that.


Speaking about donations and working full-time, the Desktop app is coming along nicely. Jacob and I have used only roughly half of the funding dedicated to Manyverse Desktop. The app is functioning well, in fact I'm using it lately as my main SSB app on desktop. There's a lot of things to still tweak, but our plan is working really well so far.

At the Svendsolar meetup, I demoed it to folks present, and there were some jaws dropping. At the meetup we also discussed different strategies (notes written down here) to make it interoperable with Patchwork and Oasis and others, because the database we use (ssb-db2) is not directly compatible with the classic one (ssb-db and flume). It's good to get diverse thoughts on this issue and build it the right way.

By the way, I can't not share a screenshot of it:

Screenshot of the Manyverse Desktop app, showing the Central screen loaded on some threads; the app resembles the Android app unmodified, but running on desktop operating systems such as Linux

I hope to make this available also on your desktop, and really, thank you for helping us financially.

See you next time! Kind regards,

β€” @andrestaltz

Receive this monthly newsletter by email on the 5th day of the every month, by donating to our Open Collective page.

Become a backer!