Current state and future of Sengi

After a bit more than two years of development, Sengi is close to a 1.0.0 release. Of course, this is more of a symbolic milestone than a revolutionary release, it is a way of saying “the software is mature enough to be considered plain and useful in its current state”.

I have to say that I made Sengi in the first place because I wanted a desktop client that would fulfil my needs, and it’s been the case since some time now, I enjoy browsing the Fediverse with this app and I’m happy others do too.

The road to 1.0.0

Sengi is my first noticeable FLOSS project, and those last months of development has been incredibly fun and interesting for me. I have had a lot of interesting interactions with users, non-users, developers, etc.

I have made serious and foolish things, tried and tested some new paradigms on the UX and the architectural sides. I might have failed on some of them (I’m still not really convinced on the Redux paradigm on an Angular’s app state-management system), there are some parts of the code that surely would benefit from a revamp in order to unbloat a bit the whole thing, but globally I have to say that I’m happy with the result.

The more unsettling thing for me was to discover Sengi been quoted in the comments of an article that was comparing Snaps/AppImages/Flatpak performances. It was completely unforeseen and fun to see.

I am making proprietary software as a living and I have to admit FLOSS software has this little particular sparkling capability of surprising you in the way it can be used, reused, modified, and reinterpreted. And I absolutely love it.

So, what’s next?

I will still work time to time on Sengi, at least to correct bugs and keep the code alive by maintaining it. I might also add some functionalities depending on the evolution of Mastodon, Pleroma and other tools supporting Mastodon API (like Pixelfed).

But it also won’t be my “primary” side-project anymore, even if I have to say that the most work I’ve done on Sengi was in 2019, since then it was already a lot less active, even if I shipped some interesting functionalities this year.

By the way, I specially choose this technological stack (Angular/Electron) with that in mind: I wanted something extremely easy to jump-in time to time and very efficient/timesaving to ship new functionalities. And I do not regret this choice in any way. I am convinced making Sengi on another stack (on more native desktop tech for example) would have taken me way more time and efforts.

What will you be working on then?

I am not leaving the Fediverse space, far from it even. I now want to develop dedicated ActivityPub software, I think that I have more value by realizing some ideas I have than only focusing on Sengi, even if it might impact Sengi as well: since it remain my principal way to browse the Fediverse, it is obvious I will give a special attention to integrate my future AP software properly to Sengi as well.

First as already stated here, I will work on releasing Birdsite.LIVE, my first ActivityPub proof-of-concept pet-project. That is basically a Twitter to Fediverse ethical and private mirroring software, if you want more information please read my dedicated post.

Of course, this will only be the beginning of something else, a baby step before the big one, I will develop more on it on some future posts so stay tuned if you are interested.

What if Sengi does not have a functionality I would like or need?

Please open an issue on Github. As stated, I will still throw some hours on this project time to time.

And if you are a developer, feel free to reach me to have some support/insights if you are willing to contribute to the project. It is a Free Libre and Open Source Software after all.

Any insight of what might come next in Sengi?

Yes! I am a Pleroma user as well as a Mastodon one, and I am not happy with the way Sengi isn’t currently providing bookmaking for Pleroma users (due to API versioning issues). There are also some Mastodon’s forks dedicated features I might try to tackle one day. And of course, anything that will annoy me as a user will obviously be fixed quite quickly.

I also should migrate my Angular version to a more modern one, but on my tests it seams to break some stuff, so I’ll take my time on that as I really don’t want to have a broken release for the 1.0.0.

Thanks for reading me and for using (and hopefully, enjoying) Sengi!