Email or username:

Password:

Forgot your password?
Roni Laukkarinen

I'm so excited to share Mastopoet, a tool made by @raikas that allows you to capture Mastodon posts as beautiful images and share them across the Internet. This makes posts much more eye-catching in other social medias for instance. :bunhdheart:

Use the tool: mastopoet.ohjelmoi.fi/

Browse the source code: github.com/raikasdev/mastopoet

Mastopoet supports #MastodonBirdUI and options to show metrics in textual or icons or hide them completely.

Please note: If you use this tool to share toots, remember to copy the post text as alt text, thank you!

#Mastodon #MastodonTools #Mastopoet #Tools #MastodonTips #Fediverse #OpenSource

76 comments
ResearchBuzz

@rolle @raikas VERY nice! Amit Agarwal made something similar for Twitter and I missed not having it here.

midka

@rolle @raikas Very cool!!!!! I'll maybe send a PR sometime

jgillman

@rolle Very handy!! Would love to see something like this baked into an app… cc @ivory 👀

Ivory by Tapbots :emoji_wink:

@jgillman We've already designed it awhile back. Just need the time to implement it.

jgillman

@ivory Amazing! And take your time. Huge fan of the quality of the app 🙏

Daniel Schep

@rolle Thank you! This is great. I could swear I saw someone asking for this on reddit recently (the same way threads generates pics for sharing on insta), but no-one understood what was being asked for.

Roni Äikäs ⚛️

@rolle From idea to working app in about 24 hours 😉

Expert Plus🍀 📷

@rolle @raikas hey @lucasggamerm , could you please make Mastopoet to be built-in in @moshidon ? Thank you in advance.

Jared White

@rolle @raikas Wow, this looks fantastic. Bookmarking immediately!!

Mike Stone

@rolle @raikas I love that! Is there a way to pass the URL of the post in the URL through a parameter or something?

Roni Äikäs ⚛️

@mike @rolle Not currently, but I'll add that to the todo list! Thank you :keanu_thanks:

Ignis 🏳️‍🌈

@rolle @raikas very nice tool, have you considered creating one for Lemmy?

mirabilos

@rolle @raikas ugh, this is awful, it removes the ability to directly interact with the toot

Munn as [Ikram]

@rolle@mementomori.social @raikas@mementomori.social very good tools.

But, it is support for Misskey/Calckey instance? I would rather to contribute if that project is open for contributing.

Matthew Exon

@rolle @raikas This has heaps of genuinely useful applications, for example embedding in presentations. But I'm kinda inclined to agree with mirabilos on this: this is the opposite of what we're trying to achieve with social media. I really cringe at sites full of screenshots of text that are never the right size for my screen. I hope people don't use this to share social media posts just because the text version "looks ugly".

One mitigation would be if the tool by default added the original data as EXIF metadata. At least the URL should be included so that people can still interact with it. You can also include the stripped text so that no-one has to waste time with screen readers. You could even include the original ActivityPub data in full.

@rolle @raikas This has heaps of genuinely useful applications, for example embedding in presentations. But I'm kinda inclined to agree with mirabilos on this: this is the opposite of what we're trying to achieve with social media. I really cringe at sites full of screenshots of text that are never the right size for my screen. I hope people don't use this to share social media posts just because the text version "looks ugly".

mihawk90

@rolle @raikas one small non-issue I noticed: the output file is named "mastopoAt.png" instead of (the probably intended) "mastopoEt.png".

See also: github.com/raikasdev/mastopoet

On a sidenote: Is there a reason the output is PNG instead of - let's say - WebP?

Roni Äikäs ⚛️

@mihawk90 @rolle PNG is more widely supported by social media sites for uploading. WEBP is used more for content delivery in my opinion.

mihawk90

@raikas @rolle makes sense. I must admit I am not huge on going to various social media places so I wouldn't be able to judge the level of support.

Roni Äikäs ⚛️

@MrFrety @rolle What browser are you using, and are you on mobile?

MrFrety

@raikas Fennec F-Droid version (firefox for android), so yes, mobile

Dam H.

@rolle @raikas maybe there is a way to add Alttext in exif Metadata?

Jasmin Hulkko

@Dam_ned @rolle @raikas

There appears to be rather fresh standard for this. Unfortunately the Alt Text property seems to be limited to 250 characters which is often too short to describe the visual representation. ref. iptc.org/std/photometadata/spe

There is more suitable field called "Extended Description" which does not have length limitation. I hope using this would catch up for recording alt texts more widely in images. ref. iptc.org/std/photometadata/spe

@Dam_ned @rolle @raikas

There appears to be rather fresh standard for this. Unfortunately the Alt Text property seems to be limited to 250 characters which is often too short to describe the visual representation. ref. iptc.org/std/photometadata/spe

Roni Äikäs ⚛️

@jhulkko @Dam_ned @rolle This is great! But I don't think I could use this, as I would need the DOM Canvas API to support it, which it likely doesn't yet I'll have to work something out 😃

Roni Äikäs ⚛️

@Dam_ned @rolle Currently, at least to my knowledge (after a few Google-searches), no. But I will try to work something.

shrimp eating mammal 🦐

@rolle @raikas this looks nice.

A point of note: when I visit the mastopoet.ohjelmoi.fi/ URL, a PNG file is automatically downloaded.

To me, this is scary and sketchy behavior and I will not visit a URL that does this!

Edit: looks like this was an overlooked debug setting and has been fixed!

Roni Äikäs ⚛️

@walruslifestyle @rolle Accidentally left my debug setting on, it should be fixed now! Incredibly sorry!

shrimp eating mammal 🦐

@raikas @rolle oh good to hear, thank you! can confirm the download doesn't happen to me anymore!

leogrun

Did we really need to add extra steps to screenshotting, though?

seekraft

@rolle @raikas Suggestion: "Remember to copy the post text as alt text" could be made easier by the tool itself. (GitHub issue here: github.com/raikasdev/mastopoet )

seekraft

@raikas @rolle My pleasure 🙇 I wish I were as responsive and responsible a developer 😉

Roni Äikäs ⚛️

@gub It's sad, but I can't do anything about CORS. You would need to contact the instance admin to add CORS headers that allow anonymous CORS. :crying_cat: @rolle

GuB 🗿🪐🧲

@raikas @rolle
Mmm… OK I understand. I think my instance admin have a good reason for this setting.
@Framasoft

Roni Äikäs ⚛️

@gub @rolle Yep, that's because of CORS. Contact your instance admin :sir_skull:

stux⚡

@rolle @raikas Also checked this out yesterday! Well done! :cat_hug_triangle:

Ben Werdmuller

@rolle @raikas This is brilliant! Thank you for making it!

ren 🏳️‍🌈 (a they/them)

@rolle @raikas super nice - any plans to make the alt text automatic?

Roni Äikäs ⚛️

@renwillis @rolle Just working on it! Though it is just a button that copies it to your clipboard, as I can't save the alt text in the metadata :blobsad:

hybrid havoc :1m: :rm:

@rolle @raikas
Interesting tool. Any thoughts or plans to offer this as a browser plugin?

Roni Äikäs ⚛️

@hybridhavoc I might in the future, I think it would be a pretty good idea :thumbsup_gummy: @rolle

hybrid havoc :1m: :rm:

@rolle @raikas
Also, thoughts on supporting custom emoji present in display names? My display name as an example in this image.

🇪🇷Götterdämmerung

@rolle @raikas Thanks. Looks great - but It doesn't embed or include images or my avatar.
:blob_dizzy_face:

Roni Äikäs ⚛️

@Gotterdammerung @rolle That's sadly due to CORS, and I can't do anything about it. You would need to contact your instance admin and have them allow anonymous cross origin on the server that serves the media for your Mastodon instance.

A workaround could be to look up your profile on an another instance, and use that instance's link to the tool 🤷

Like this:
mementomori.social/@Gotterdamm

Wigbert Boell 🎻🏛🎭🎤🗞🎥📚

@rolle @raikas

looks very cool - but:

hmmm … this tool supposedly jas CORS issues at the server - and I should contact the admin … sorry, but I don’t know what that means ..?
@ruud

Roni Äikäs ⚛️

@wigbert @rolle @ruud CORS is a security feature of browsers, that is used when a website wants to use a resource on an another website.

Your instance you are on (mastodon.world) has a person that manages it on the serverside, the admin. For your instance it's @mwadmin. They can make the changes required to make the CORS requests work.

Here's a great video about how it works, but it's bit technical:
youtube.com/watch?v=4KHiSt0oLJ

Mastodon.world admins

@raikas @wigbert @rolle @ruud I will look into it. We did enable CORS for lemmy.world too, before the lemmy had something for it.

Alex Gizis

@rolle @raikas says “CORS issue detected!” Before i enter a url. Works great when i ignore it and put in a url.

Alex Gizis

@raikas @rolle i visited, backed out of the page, and then came back and then got it. might be important. But it's really cool, nice work!

Roni Äikäs ⚛️

@AlexGizis @rolle The CORS issue alert is shown if a image load fails, which usually happens due to CORS, but might be fired also accidentally due to other errors.
Thanks for the report!

Saket

@rolle @raikas Tagging @IceCubesApp to see if this is a cool feature to add (and if you decide to implement it, maybe automate adding the post text as the image alt text? 😁).

Go Up