PieFed 1.3 is released
codeberg.org/rimu/pyfedi/releases/tag/v1.3.0
What’s new
- Media library that lets you upload images to comments/post body and paste from the clipboard
- Animated gif support for user profile pictures
- Specify alt-text for link posts that link to an image
- Emoji picker and spoiler button added to markdown toolbar
- More links to the modlog (footer, community sidebar, user profile) and improved searching/filtering
- Leave a conversation to remove it from the list of their direct message conversations
- Post urls are now “friendly” since they include the community name and a snippet of the title instead of just a number
- Add link to show parent comment when directly viewing a comment reply
- Image markdown style formatting to allow more advanced control of how images are rendered. e.g.
 - Code syntax highlighting in code blocks and allow for style selection in user settings
- Tag cloud added to sidebar for feeds and topics
- Better searching and filtering of the Instances list
- Add a block (of a user, community, instance or domain) from the blocks and filters management area, without doing it via a post
- Popup suggestions when mentioning a community or user as you type
- Onboarding plugin which auto-subscribes, auto-blocks and sends a welcome message for new accounts
- Improved federation efficiency
- Old posts can be automatically archived (saved to S3) to free up database space
- Old posts by bots with no comments are automatically deleted
- LLDAP support, which does LDAP a bit differently
To upgrade
To upgrade from 1.2.x:
git pull
git checkout v1.3.x
./deploy.sh or ./deploy-docker.sh
In the past we had a separate project for realtime notifications, which is now unsupported as it’s code has been merged with the main PieFed project. To set it up, refer to the Push Notifications section of install.md. As well as enhancing the user experience doing this will decrease load on your server if it hosts local communities with many subscribers as some of the federation work has been offloaded to the push notifications service.
Donations
PieFed is free and open-source software while operating without any advertising, monetization, or reliance on venture capital. Your donations are vital in supporting the PieFed development effort, allowing us to expand and enhance PieFed with new features.
23 Comments
Comments from other communities
Wow, so fast, you all are awesome!! 😎
Animated gif support for user profile pictures
Can this be made into a user option to turn it off?
Add this snippet to your custom css:
.render_username a .gif {
display: none !important;
}
Would be important to get a checkbox in the settings for this. With my ADHD animated user profile pictures will be a very big usability problem.
I can definitely understand how they can be fun, and their existence is something I do support. But personally, I will disable them from my view.
I’ve just made it so that PieFed automatically hides gif profile pics based on your accessibility settings.
On macOS: System Settings → Accessibility → Display → Reduce motion
On Windows: Settings → Accessibility → Visual effects → Animation effects
On iOS/Android: Accessibility → Reduce motion / Remove animations
How many devs does piefed have? The process is insane.
Looks like 3 highly active devs (Rimu has 2 accounts in the graph lol, that still only counts as one!), and a bunch of other contributors
Very regularly in the Matrix, someone will mention ask about a feature, and a few hours later rimu or wjs will pop in to say its been fixed/added.
Goated dev team and community.
The bit about image formatting seems cut short. Here is the post about image markdown formatting syntax, and here is the post where you can see it in action.
@Snoopy@piefed.social I can work on documenting the feature set of the image formatting in the wiki if you make a placeholder somewhere. Just let me know. Right now the only documentation is the docstring in the code.
Thanks for the update. Now if piefed.world finds the time to update the server version, I’ll be switching back to that account.
If they don’t, you can always use https://piefed.zip/
Latest monthly report: https://piefed.zip/c/home/p/655491/lemmy-zip-piefed-zip-server-update-november-2025#post_replies
Thank you again, for all the work.
Old posts can be automatically archived (saved to S3) to free up database space
When I first set up the .env.docker, I saw a mention of this feature. Is there a sample for me to look at to set up S3? When I started on 1.2.5, I don’t believe I saw any settings.
I suppose my instance is quite small, but this could be interesting to check out anyway.
Do old posts get refreshed into new posts if they receive a new comment to avoid them being archived?
That might be a cool feature, since PieFed has the “Active” sort and Lemmy has the “New Comments” sort which are features that Reddit doesn’t have @rimu@piefed.social
I wrote up some steps for using Backblaze B2, which is the cheapest S3 compatible option I could find and has worked well for me for years: Using Backblaze B2 with PieFed
If you end up using these steps, let me know because I’m waiting for someone to test them before commiting them in a PR 🙂
Thank you for that How-To. Now I know this isn’t what you first intended, but I tried to adapt this for DigitalOcean [DO] which is where my VPS is. I was not able to set up the CNAME, and I kind of worked out what was happening without a solution. For now I don’t have the CNAME set up and the links lead directly to my S3 Bucket.
I’ve got my set up laid out at the bottom of the post here. I’ll ask there if it’s okay to just keep this arrangement or if there are concerns.
First, for DO, I had to install s3cmd as per this How-To https://docs.digitalocean.com/products/spaces/reference/s3cmd/ Second, once s3cmd is set up, and configured, DigitalOcean has a default permission of private, and I had to make a policy to switch the default over to public. I configured the bucket policy with this How-To https://docs.digitalocean.com/products/spaces/how-to/configure-bucket-policies/ What I noticed for DO, is that the bucket generates a folder of the same name of the bucket, and PieFed populates the folder. So for example: s3://your-super-unique-bucket-name/your-super-unique-bucket-name/communities Third, I took your How-To for BackBlaze that you kindly provided and changed my pyfedi environment variables - in my case a docker For DigitalOcean the region is not needed, and for illustrative purposes the region here is tor1 for the Toronto datacentre. Perhaps the only thing that doesn’t work quite right is uploading images. I’m currently here for now as the bucket is being used and all the images are displayed correctly. Why I didn’t finish the CNAME setting. For DigitalOcean, if I change the S3_PUBLIC_URL variable to ‘piefed-media.your.domain.here’, what happens is DO generates a new folder in the bucket. So what ends up happening is PieFed populates this new folder. s3://your-super-unique-bucket-name/piefed-media.your.domain.here/communities PieFed still follows along with piefed-media.your.domain.here, and I was able to set up the CNAME as instructed. But I just wasn’t able to get things working as expected. Am I able to just keep things as is with links pointed directly at my bucket? Or is there some kind of concern with this set up.Steps
s3://your-super-unique-bucket-name/your-super-unique-bucket-name/posts
S3_BUCKET = 'your-super-unique-bucket-name'
S3_ENDPOINT = 'https://your-super-unique-bucket-name.tor1.digitaloceanspaces.com'
S3_REGION = ''
S3_PUBLIC_URL = 'https://your-super-unique-bucket-name.tor1.digitaloceanspaces.com/folder-name'
S3_ACCESS_KEY = 'example004819c3ba9b31b0000000003'
S3_ACCESS_SECRET = 'exampleK004Uei/7Vf90FzWuN3zoGl5npK3zZc'
s3://your-super-unique-bucket-name/piefed-media.your.domain.here/posts
Nice write up!
I don’t have any experience with Digital Ocean, but I think the CNAME is ultimately for the vanity URL – if it’s working as you set it up now, I don’t think it’ll break for any reason.
Don’t quote me on that though!
Has a fix for ‘Crosspost any post’ been included in 1.3 or will it be moved to 1.4?
https://codeberg.org/rimu/pyfedi/issues/996
I looked at some posts but don’t see the crosspost option
1.4, but no promises that it won’t be bumped to 1.5.
The way it’s working out so far is we never finish all the issues that were intended for each release because after 20 or so issues are completed it feels right to release at that point. And then when something gets bumped that doesn’t automatically mean it’ll be a high priority for the next release… We’re running on ideals and enthusiasm here so it’s hard to stick with long term plans.
Looks like some pretty solid improvements (I use piefed on a different account).
Looking forward to checking out the image upload functionality and the UI/UX improvements.
It’s good that the old style links aren’t broken.
The old style links still work in my experience
https://anarchist.nexus/ already upgraded
Their theme broke with the update?
Looks fine here. Maybe cached resources in the browser? They’re also on cloudflare, that’s another level of cache that might not have cleared.
It looks fine as in the default Piefed theme, yes. But they used to have a very nice custom theme.
Potentially related: https://piefed.zip/c/piefed_help/p/669450/amethyst-anarchist-nexus-theme-colors-for-clicked-links#post_replies
just upgraded my instance. pretty good, very smooth and yay animated profile avatars!
Such a great update. Huge thanks to the team!
Tried to setup it once bare metal, everything prepared, but only got an error on db init..
flask db upgradeworked butflask init-dbonly threw cryptic errors…The docs on join.piefed.social are very limited, they should refer to those on Codeberg. Codeberg docs were completely missing how to setup S3 storage. I just took a look, now it is in the docs. This is good 👍🏻
While I set up piefed, you read in the middle of the docs, that you need a second project for notifications at the time I tried to set this up.
Now you don’t need it anymore, as far as I read in the docs.
“Okay just use Docker…”
Multiple cronjobs for containers? Come on 😐
Lemmy is far easier to use in a container.
Maybe a take look at piefed again when there is a background manager instead of 4 cronjobs.
I’ve never used the baremetal setup, so I can’t speak to that. However, I actually agree with your points on the docker deployment. It’s something I have spoken about to some length with people in our matrix channel as well. There are a couple things that I don’t love about the current docker setup process, but just don’t know docker or linux stuff well enough to fix:
Docs are an always evolving thing and we have been fortunate enough to have some other admins go through the setup process and provide feedback, which has helped flesh the docs out some more. However, there is always more that can be done.
I see your efforts in the last months. My test failed about 5 months ago, but I will give it another try with the bare metal setup in future.
Piefed is actually the only serious alternative to Lemmy in my opinion. Hope you find help with the container, it is the most used way to selfhost these days, wish you the best :)
mbin:
In terms of number of users, rate of growth (in number of users, communities, instances, etc.), level of app support, appreciation from the Threadiverse community, and by all other metrics, yeah? Especially the sheer pace of development of PieFed, which is just a pleasure to observe such a labor of love.
Threaded conversations in Mbin appear more like an afterthought to the Twitter/X microblogging style - see e.g. its own level of app support. Also, the peak of Mbin (according to this site was 874 monthly active users in April 2024, but just one month later that had dropped to 563 and today is 719.
Though Mbin is still remembered - now as the Threadiverse = Lemmy + PieFed + Mbin (+ nodeBB + flarum, with Sublinks seemingly abandoned). There is room for us all here! :-) I will add that if Mbin ever wanted to actually get serious, it would be nice to see.
OK, you might be on to something there.
There are dozens of us! DOZENS!
But yeah, seeing mbin not growing that much is a bit sad to me because I really liked the project since the very first days of the project (kbin). I still use it and probably will continue to, but will someday try Piefed just for the better app support
I also left Reddit not for the tankies but for kbin.social, so PieFed is a spiritual successor for that:-).
@wjs018@piefed.social @rimu@piefed.social
Cool!
You might as just let users write the
<img>tags directly at this point, at least then you won’t add noise to third party apps’ accessibility stacks.(I honestly wouldn’t be opposed to letting users write HTML directly, it was one of Tumblr’s best features imo)
But that would open many security holes, allowing XSS attacks, loading viruses, and all those bad things.
Obviously it’d only be a subset of HTML. No website that uses user-submitted HTML (Tumblr, AO3, Royal Road, etc) actually allows the full suite of tags.
GitHub allows some HTML in their markdown files, including
<img>it’s just very limited, email is similarJust updated my instance! Thanks to all contributors!