Spinster 2.0 - Moving From Mastodon Backend to Pleroma
New features coming soon to Spinster!
We are very excited to announce that on August 13, 2020 the next version of Spinster will be launched. The update will involve the addition of many new features, the removal of some of our least-used and/or broken features, and a few hours of down-time while we upgrade the server. In addition to the user interface (UI) and feature changes, this upgrade, four months in the making, also significantly changes Spinster's backend and database. We believe these changes will not only provide a better user experience to Spinsters, but better support the growth of the platform in the long-run.
This article will summarize the changes coming to Spinster, the reasoning behind these changes, and what Spinster users can expect in the coming days as we complete the migration.
Please expect multiple hours of downtime on Spinster beginning at 3:00 am UTC on August 13, 2020.
- Mastodon to Pleroma backend migration
- New features coming in Spinster 2.0
- Features removed from Spinster 2.0
- Temporarily disabled features
- The future of Spinster - more new features coming soon!
Mastodon to Pleroma backend migration
The biggest change coming to Spinster is that we are switching out the software that powers our backend. In software development, backend means the part of the software that is not seen or interacted with directly by users. It is generally the part of the software that communicates with the database, reading and writing information that will be delivered to the frontend for use by the user.
Since it's creation, Spinster has been running on Mastodon, Fediverse software written in Ruby. Mastodon is great, and we are thankful to the developers behind Mastodon for their work pioneering the Fediverse. However, through a year of experience, research, testing, and development, we've discovered that Pleroma is a better backend fit for Spinster.
Pleroma is written in Elixir, making it about twice as efficient as our previous Mastodon backend. This means that we can support twice as much activity on Spinster before we have to raise our server costs. Since we hope that Spinster will continue to be a vital refuge for women online, this ability to scale while keeping costs manageable is important to keeping Spinster sustainable.
Mastodon developers have been also been openly hostile to the idea of working with feminists, and have even taken part in attempts to isolate us on the Fediverse.
The migration from Mastodon to Pleroma backend is not trivial, though. They require entirely different database structures. We used a script that is able to migrate Mastodon databases to be compatible with a Pleroma backend. In order to accomplish this, the millions of activities that have occurred on Spinster in the past year will be exported from our existing Mastodon server, reconfigured to match Pleroma database structure, and then imported to our new server running Pleroma. The Spinster frontend has also been upgraded, making it faster and easier to add and deploy new features.
To be clear—no user data is leaving Spinster's servers! We are setting up a new server with our current hosting provider and migrating the data between these two servers. This migration does not give anyone new access to any data they could not previously access.
There will be some downtime and weird timeline behavior on Spinster on the day this migration takes place. The old server will need to be shut down entirely while we export the data, and the site will be down until the new server comes online. You should also expect to see your timelines initially appearing out of order, with older posts being re-surfaced to the top of the timeline. This is a one-time occurrence while all of our old content is being imported to the new server. Once the site is fully migrated, new posts will appear as usual in chronological order.
You may need to reconfigure some of your personal settings after the update, such as two-factor authentication if you previously had that enabled.
New features coming in Spinster 2.0
These are entirely new features that have been introduced in the new version of Spinster. Please take all screenshots with a grain of salt—they are not actually from Spinster, but from my local development environment which does not have all the same details (branding, user accounts, etc) as the real Spinster.xyz. Please also note that most frontend updates will not be reflected in the Spinster Android App or any other third party Fediverse applications unless they are separately added.
Users may now leave a variety of emoji reactions on a post thanks to backend support for this feature in Pleroma. "Thumbs up" reactions are automatically interpreted as "favorites" for compatibility with other Fediverse servers which do not have emoji reactions.
You can now use basic markdown in posts. Our markdown composer supports bold, italics, ordered and unordered lists, block quotes, and links. You can turn off markdown on your post by clicking the new "MD" icon in the post composer. You can also use markdown in Content Warnings.
Add uploads to polls
Spinsters, I know you love your polls. Now, add media uploads to polls!
Hover profile cards
A long-requested feature, we hope that adding the ability to easily view profile information about users directly from your timeline will help you find new users to follow and improve engagement. You'll also be able to see if a user follows you, and if they have any profile badges (like "Mod" or "Pro").
Since favorites are primarily a post reaction, we've also added the ability to bookmark posts for your later reference. Bookmarks are private, available only to you. Access your bookmarks from spinster.xyz/bookmarks
Easy night mode toggle
Spinster already had light and dark themes, but changing it involved going through a settings menu. Now, you can easily switch from day to night mode with a toggle directly in your navigation bar! No save or refresh needed. and we'll remember your setting for next time you return to Spinster.
Easier to update profile settings
Your profile settings will now update right away, without you having to save.
We've made small adjustments to the main layout to make important links easier to find.
Additional timeline filtering options
A few additional timeline filtering options have been added. Direct Messages will now be hidden by default from your Home timeline. You can turn them back on by toggling the "Show direct messages" setting. The local Spinster timeline will also now display all activities happening on Spinster by default (including reposts and replies). Previously the local timeline only displayed new top-level posts. To return to the original Spinster timeline configuration, turn off "Show reposts" and "Show replies".
Ability to search for users you don't follow in search bar
Previously, the search function only returned users you follow, making it hard to find new users. Now, you'll be able to search for users you don't already follow. In the future, we hope to add more improvements to search and discoverability (more on this later).
Entirely new Admin panel for moderation
While this won't affect most users, Admins and Mods will now have a shiny new moderation panel where they can respond to reports.
Features removed from Spinster 2.0
These features have been entirely removed and may or may not be replaced in the future.
"Who to Follow" and "Trending Hashtags" sidebar
These two sidebar panels have been removed in Spinster 2.0 to make room for better and new iterations of discoverability and exploration features.
The "Who to Follow" sidebar was broken beyond repair and essentially useless, often showing users you already followed. It wasn't particularly smart about gauging interests, relationships, or making predictions about who you would want to follow.
The "Trending Hashtags" feature was okay, but was implemented specifically by Mastodon with no Pleroma equivalent. However, there were issues with this feature around Federation and curating tags that were relevant to Spinster users. In the end, we chose to de-federate the Trending Hashtags and make it only pull from Spinster posts. This limited its effectiveness, though, and made it relatively hard to get a tag trending. In the future, we would like to bring back Trending Hashtags with whitelist federation to make it more robust and useful.
Pro custom backgrounds & Halloween theme
We've removed pro custom backgrounds and some theme options from Spinster. I know a few of you were probably very attached to your theme, and for that I am sorry! In the future, we would like to bring new theme options to Spinster 2.0 but, for now, we are only providing the light and dark themes.
Follows and following filter views
This little-known feature provided a settings view where users could manage their follows and following lists. You are still able to add and remove followers directly from profiles.
Temporarily disabled features
These are features that we unfortunately cannot currently support on the new backend, but we are working very hard to get back up ASAP!
Exporting account data
We have temporarily disabled exporting account data while we create a new export format compatible with our new backend. We hope the new export account format will be more useful than the original one.
Timeline language filters
Timeline language filtering was only provided by Mastodon backend, and there is currently no Pleroma backend equivalent. We know that many users rely on this feature, however, it also was not always very good and we had received many complaints about the language filter's effectiveness. We hope to bring back language filters in the near future and it is very high on our priority list after the initial migration and update is complete.
The Future of Spinster
The move to Pleroma opens up the opportunity to implement many new features much more easily than before. These are some possibilities that we are currently exploring. However, they are just ideas and subject to change.
Most of the support for native 'Facebook Messenger'-style chats is already in Pleroma. It just needs a UI from us and the ability to moderate reported chat content. We know that the current direct message interface is not the best, and we hope that chat could essentially replace the current DM system.
Viewing remote instances
We hope to soon bring the ability to view an entire remote timeline into Spinster. This would include an icon on all posts indicating the server the user is posting from, and the ability to click to view a remote instance's public timeline. We hope this will help more easily distinguish Spinster users from other users across the Fediverse, help you find new users on other servers to follow, and increase understanding of how federation works through a UI that encourages exploration.
New discoverability features
As mentioned above, we removed the existing "Trending Hashtag" and "Who to Follow" sidebars. In the future, we'd like to build more robust exploration tools to help you discover new users, find conversations that are interesting and relevant to you, and building meaningful communities. We're not totally sure what this will look like yet, but we have some ideas that we are very excited about!
Improved search functionality
We hope to build a more robust search tool which will allow you to filter by users, posts, etc, and that will return more detailed search results.
Support Spinster's Growth
New features don't grow on trees! Spinster 2.0 is the result of many months of dedicated work by our tech team. We are deeply grateful to those of you who support our work and allow us to keep building this amazing community for women.
You can support the growth of Spinster by becoming a monthly donor on Spinster.
Enter your email below to sign in or become a 4W member and join the conversation.
(Already did this? Try refreshing the page!)