re: code 

@Mayana test confirmed. Though I just noticed I forgot to add the 'does not have description' selector to gifv example in the last code I gave you.

Here's the latest (and likely last) version of the CSS code, which should have that fixed:

And an example where the border is more subtle (1px wide, dashed, and half opacity red):


I'm looking for interview partner, to improve the user experience of @briar to the needs of those that fit at least one of the following category:

- formal or informal organized to resist oppression...
- indigenous, black, POC...
- queer, trans...
- disabled, spoony...
- journalist...
- ? you...

(boost appreciated)


One thing I continuously see is leftists, meaning white anarchists, and white communists, not engaging with Black working class Liberals forming unions and organizing, at all. While Black Liberals organize, white leftists lecture about unions being a tool of the bourgeoisie. White leftists especially love to shit on Black liberals for organizing because something something Capitalism, and yet, many haven't engaged with mutual aid in any way. I'll never understand it. This article is real, and I see it happening daily, nationally and locally.

If you use Friendica to access the Fediverse, you can also use it as an RSS feed reader.

Just search for any RSS address within Friendica, and it will appear in search results as though it's a Fediverse user. You will then be able to follow it, and its contents will appear in your timeline just like a user's posts would.

#FediTips #Fediverse #Friendica #RSS #NewsFeeds #RSSReaders

We officially deny that Delta Chat is related to the #DeltaVariant even if we are often internally using "Delta" to refer to Delta Chat -- and our apps are a variant mutation of regular e-mail and messaging apps :)

Juneteenth a US Federal Holiday 

US House quickly follows #Senate to make #Juneteenth, the anniversary of the end of slavery in the US, a national holiday; Biden's signature is assured.

I am in a, hating the online left mood again today. I guess I’m having one of those neoliberal days. No particular reason, it’s just one of those days where neoliberals seem more productive to me than actual leftists

How can I easily tell (on a phone) if an image has alt text or not on Mastodon. Would be great if Mastodon visibly flagged images that don’t have alt text with a warning in the interface so we know not to boost posts that don’t have it.

#accessibility #a11y

My own website. 

I'm exhausted trying to move from to Classicpress. Security is a full time job, testing for on my own site isn't quite easy because many plugins don't output accessible content, and I keep stressing myself out over cookies and privacy and a privacy policy and such. I'm very tempted to just have my fans make admin accounts and run the website all in their spare time. Seriously, I'd love to switch because of where WP COM is headed, but I haven't even imported stuff and I'm exhausted. For now, I'm sticking with until I just can't take the block editor anymore. I wish there was a WP.COM alike for Classicpress.

We published a new Blogpost: Diversity - Some notes about the current state and how to improve it

TL;DR: We think we can do better, if you have some input, please share it with us!

#Funkwhale #Diversity #Feedback

If you have any concerns exposing yourself to us by providing feedback, we have a way to provide this anonymous and private:

Show thread

Just in case anyone is concerned about how fast the COVID-19 vaccines were produced: it is because they are variants of the SARS vaccine, which we've had for more than a decade.

COVID-19 can be treated with a variant of the SARS vaccine because COVID-19 is a variant of SARS. The virus that causes SARS is SARS-CoV, and the 2019 novel coronavirus is SARS-CoV-2.

Because of this, researchers had a vaccine ready for testing as early as January 2020. The COVID-19 vaccine had, in fact, nearly a full year of testing and refinement. It is not by any means "experimental" or "untested".

Some notes about the current state and how to improve it 

It’s Pride month. People around the world are fighting for equality and celebrate diversity. The Funkwhale community is fully in support of diversity. We believe it is the greatest strength any community can have. Because of this, we have always tried to make our spaces welcoming to everyone and have strived to be inclusive to people from all backgrounds. However, we have not always been as successful as we would have liked to have been.

It is easy to pay lip service to the subject of diversity. Words and platitudes are cheap, and many in the technology world like to wax philosophical about how much they are in support of under-represented communities. Putting these sentiments into practice, however, is much more challenging. For all of our best efforts, we need to acknowledge we are far from perfect. Most of the people who hold positions in the Funkwhale community are male, based in Europe, and white. That’s not an equal representation of the people around the world or the users of Funkwhale, and is something we are keen to address.

Lets elaborate why this is so important to us. Humans are quite different, they have different use cases for and different access to our software. There are different devices, different languages, different abilities and many more differences than we can even think about. On the one hand its simply discriminatory to exclude some people from using or developing our software or take part in shaping the community. On the other hand this exclusion is a huge loss for the community, since we loose perspectives, opinions and contributors. And this is exclusion is not only happening explicitly. We also exclude people by not making our places welcoming or making it not easy enough for people to join us.

We have had some discussions about this topic. We know we cannot remedy every factor that has led us to where we are currently. But we typify these issues at Funkwhale, too, and this is something we think we can change. We want to be more inclusive and welcoming, and we want to make sure that people can not only enjoy our software, but feel positive about contributing to the project and community as well.

This is where you come in. Besides having our own thoughts about the topic and doing some research, we want to open the discussion and get your feedback, so that we are not just acting on our own myopic points of view. So, if you want to give us some input, have some ideas, or want to point out places where we have messed up, let us know! Tell us everything you think about this topic, especially if you don’t feel represented in the community already.

You can write us an E-Mail (private), contact us on Mastodon or Twitter (private or publicly), you can post to our Forums (public) or provide your feedback here (private & anonymous).

Write Freely is a Fediverse alternative to Medium.

It's a free open blogging platform that lets you write long articles on the Fediverse, which can be interacted with from Mastodon etc.

You can find an instance to join at

Alternatively, you can set up an instance yourself either directly (instructions here: or through a managed hosting service (for example

#FediTips #Fediverse #WriteFreely #Blogging #Blogs #Blog

Modern Comments in Microsoft Word. 

Can Microsoft take a second to understand that modern comments slow down productivity and comments were never meant for real time collaboration to begin with? Bonus. Many young editors are saying modern comments simply doesn't work. This notion of old people just hate change and therefore should be ignored has to stop. I can't move to Libreoffice because it doesn't work with a screen reader fully. I'm a writer. This has halted my work.

Version 0.13 

Hello again! 👋 After a long absence, we’re pleased to release WriteFreely v0.13 today! This one includes a new rich editor, generic OAuth support, Web Monetization support, and a ton of small improvements. Besides that, this is one of our last releases before version 1.0!

Download v0.13 now

Major Features

Classic editor (T727)

If plain text and Markdown aren't your thing, now you can get a more “classic” writing experience with the Classic editor! This features more of a What You See Is What You Get interface that doesn't require the learning curve of Markdown. However, behind the scenes, posts are still saved as Markdown, so you can always switch between the Classic and standard editor. Admins can enable this option by setting editor = classic in the [app] config section.

Gopher Support (T559)

Give your audience a old-school, lightweight way to read posts on your WriteFreely instance, via the Gopher protocol! Enable it with the new gopher_port config value in the [server] section. When it’s enabled, multi-user instances will show all Public blogs at gopher://[host]:[gopher_port]/.

Gitea and Generic OAuth Provider Support (#293, #317, #405)

We’ve added more ways for users to authenticate with your WriteFreely instance, via Gitea or any generic OAuth 2.0 provider! Our generic OAuth provider support in particular gives you the chance to use WriteFreely alongside a range of applications that hold your users, from Mastodon to Nextcloud to Keycloak.

Web Monetization Support (T773)

Writers can now accept micropayments for their work via the proposed Web Monetization standard, and even publish exclusive content behind a paywall. Admins can enable this by setting monetization = true in the [app] section of their config, or changing the setting in their admin panel. This is just the start as we look to give readers more ways to financially support writers — read more about this on the blog.

ActivityPub Notes (#220)

Now, WriteFreely is more friendly to microblogs! If a post doesn’t have a double-line-break in it, it’ll be sent to the fediverse as a Note, rather than an Article. If you’d prefer to always send Notes, admins can set notes_only = true in the [app] config section.

Account deletion (T319)

It’s now easy for users and admins to quickly delete account data from WriteFreely via the web! Admins can access this option from their Admin Dashboard, and users can access it from their Account Settings page, if admins have configured Open Account Deletions (via the Dashboard or config file: open_deletion = true under the [app] section).

Post Signatures (T582)

This enables users to add a signature to all blog posts, and update it from a single location (the blog's Customize page).

User-Facing Changes / Fixes

  • Optimize Drafts retrieval (#295)
  • Support AP-style mentions of centralized social media accounts (#319)
  • Show warning in editor when local draft is out of date (#41)
  • Allow footer and header elements (#326)
  • Set pad light / dark theme based on system settings (#196)
  • Improved blog management navigation (#371)
  • Fix silenced user post visibility (#374)
  • Automatically resize CSS editor (T708)
  • Stop private and protected blogs from federating (#403)
  • Fix following from Mastodon with Authorized Fetch enabled (T820)
  • Fix language metadata gets reset to English after editing a post (#280)
  • Support logging out of password-protected blogs (T492)
  • Always show post actions on mobile devices (#309)
  • Include images as attachments in ActivityStreams data (#442)
  • Fix .md file import from Safari (#334)
  • Fix Custom CSS editor not working well on touchscreen devices (#452)
  • Support Drafts list paging (T401, T696)
  • Support title-only posts (#464)

Minor Changes

  • Support number+letter hashtags
  • Use a bigger font size for h2 (#217)
  • Ignore “collation mix” errors in GetCollectionRedirect() (#318)
  • Make dropdown navigation menus more accessible (#355)
  • Fix removal of query parameters on youtube embed links (#328)
  • Truncate lede at question mark (#316)
  • Fix double HTML-encoded meta tags (#340)
  • Fix header spacing on pinned posts (#385)
  • Fix unable to edit posts titled “Tags” (#305)
  • Set SameSite=None on session cookie (#443)
  • Make language highlighting matching case-insensitive (#429)

Admin-Facing Changes

  • Remove “No to!” log (#311)
  • Support encrypted database connections (#297)
  • Fix docker-compose (#407, #139, #323)
  • Fix Docker repository does not exist (#416)
  • Support user deletion from web interface (T319)
  • Support Unicode domain names (#457)

Developer-Facing Changes

  • Add CORS header to public APIs (#327)
  • Support slug parameter when publishing a post (T811)
  • Return a url property on Publish a Post endpoint
  • Support setting description at user registration

Performance / Backend

  • Move WriteFreely repo from writeas org to writefreely (#451)
  • Move MathJax library from submodule to single file (#176)
  • Improve static file serving with Cache-Control header (#322)
  • Use HTMLContent field in RSS feed (#418)
  • Remove writeas/nerds/store pkg dependency (#445)
  • Bump from 1.1.0 to 1.1.1
  • Bump from 1.0.0 to 1.1.1
  • Bump from 1.0.2 to 1.0.5
  • Bump from 1.6.0 to 1.7.0
  • Bump from 1.55.0 to 1.62.0
  • Bump from v3.4 to v3.5
  • Bump from 1.4.1 to 1.6.0
  • Bump from 0.2.0 to 0.2.1
  • Bump from 1.10.0 to 1.14.6
  • Bump from 1.0.2 to 1.2.0
  • Bump from 0.3.2 to 0.8.0
  • Bump from 2.1.1 to 2.3.0
  • Bump from 1.7.0 to 1.10.0

Upgrading from v0.12.0

Download the latest release for your operating system. Stop running your writefreely service, replace all files in your installation with the ones in the archive, and then start your writefreely service again.

Now make sure your database is backed up, and update it with:

writefreely db migrate

Finally, generate a new encryption key needed for this release (you can ignore messages about removing existing keys):

writefreely keys generate

No additional steps are needed to upgrade from v0.12.0. Follow the instructions in each previous release if you're upgrading from an earlier version.


If you are running a custom build: we made changes to site styles and added a Javascript dependency that needs to be compiled (prose.js). Run this to compile everything:

make ui


Thanks to everyone who contributed to this release!


Support WriteFreely

Until now, WriteFreely has been funded entirely by, a small software company started by Matt Baer. As we grow, we want WriteFreely to develop into a project that can stand more on its own, independently from So to help with this, we’ve started setting up separate financial infrastructure for the project.

If you’d like to help fund development and basic project infrastructure, you can now contribute directly to the project on Open Collective or GitHub. Thank you!

I challenge anyone who's fedi experience is improved because of image, GIF, video, or audio captions to take the time to personally thank at least 3 different people each week for describing their media!
Should it be expected at this point? Yes in most cases I think so. But reminding people that taking the time to do it is making a tangible positive impact, and causing others to see the social benefits at the same time is a great way to encourage people to do it more.
If you can't find many examples on your personal feed, just use the media only filter on your local and federated timelines; they shouldn't be too hard to find after that!

Privacy policy generator? 

Because I am moving my website from to myself hosted ClassicPress website, does anyone know a plug-in or service that will automatically generate a privacy policy for free? I don’t plan to collect data at all, but I Will have things like an email subscription box, A contact form, and things like that. I do not want advertisements, or anything like that, so is there a tool that will automatically keep my privacy policy up to date? I also will not have comments

Show older

A fun, happy little Mastodon/Hometown instance. Join us by the fire and have awesome discussions about things, stuff and everything in between! Admins: @Talon and @Mayana.

<svg xmlns="" id="hometownlogo" x="0px" y="0px" viewBox="25 40 50 20" width="100%" height="100%"><g><path d="M55.9,53.9H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,53.9,55.9,53.9z"/><path d="M55.9,58.2H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,58.2,55.9,58.2z"/><path d="M55.9,62.6H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,62.6,55.9,62.6z"/><path d="M64.8,53.9c-0.7,0-1.3,0.6-1.3,1.3v8.8c0,0.7,0.6,1.3,1.3,1.3s1.3-0.6,1.3-1.3v-8.8C66,54.4,65.4,53.9,64.8,53.9z"/><path d="M60.4,53.9c-0.7,0-1.3,0.6-1.3,1.3v8.8c0,0.7,0.6,1.3,1.3,1.3s1.3-0.6,1.3-1.3v-8.8C61.6,54.4,61.1,53.9,60.4,53.9z"/><path d="M63.7,48.3c1.3-0.7,2-2.5,2-5.6c0-3.6-0.9-7.8-3.3-7.8s-3.3,4.2-3.3,7.8c0,3.1,0.7,4.9,2,5.6v2.4c0,0.7,0.6,1.3,1.3,1.3 s1.3-0.6,1.3-1.3V48.3z M62.4,37.8c0.4,0.8,0.8,2.5,0.8,4.9c0,2.5-0.5,3.4-0.8,3.4s-0.8-0.9-0.8-3.4C61.7,40.3,62.1,38.6,62.4,37.8 z"/><path d="M57,42.7c0-0.1-0.1-0.1-0.1-0.2l-3.2-4.1c-0.2-0.3-0.6-0.5-1-0.5h-1.6v-1.9c0-0.7-0.6-1.3-1.3-1.3s-1.3,0.6-1.3,1.3V38 h-3.9h-1.1h-5.2c-0.4,0-0.7,0.2-1,0.5l-3.2,4.1c0,0.1-0.1,0.1-0.1,0.2c0,0-0.1,0.1-0.1,0.1C34,43,34,43.2,34,43.3v7.4 c0,0.7,0.6,1.3,1.3,1.3h5.2h7.4h8c0.7,0,1.3-0.6,1.3-1.3v-7.4c0-0.2,0-0.3-0.1-0.4C57,42.8,57,42.8,57,42.7z M41.7,49.5h-5.2v-4.9 h10.2v4.9H41.7z M48.5,42.1l-1.2-1.6h4.8l1.2,1.6H48.5z M44.1,40.5l1.2,1.6h-7.5l1.2-1.6H44.1z M49.2,44.6h5.5v4.9h-5.5V44.6z"/></g></svg>