๐Ÿฅณ Announcing Splinter, your #fediverse tool for creating #Mastodon threads.

Splinter is a simple, self-explanatory app. It's a fun, non-profit, open-source side project.

I use Splinter all the time myself now; There must be others who need it. Please share to help them find it!

https://splinter.hastily.cc/ (1/2)

Key features:
๐Ÿ‘‰๏ธ Smart post splitting, avoiding breaking paragraphs or words,
๐Ÿ‘‰๏ธ Manual control of post breaks using the "=====" symbol,
๐Ÿ‘‰๏ธ A new "Thread" exposure mode: first post is public, the rest are unlisted to avoid spam,
๐Ÿ‘‰๏ธ Live preview,
๐Ÿ‘‰๏ธ Which other feature do you want?

I'm not a professional developer, so feedback is welcome! Negative as well, that's how you study.

Source code: https://codeberg.org/neiman/splinter (2/2)

splinter

Split long articles into Mastodon threads.

Codeberg.org
delightful activitypub development

Delightful curated lists of free software, open science and information sources.

@smallcircles thanks, it's just a lack of experience. I'll fix the license issue (but in a few days, I'm afk at the moment).
@smallcircles I organized the license part. Hope it's ok now!

@neiman since youโ€™ve asked for feedback.

You could add an index on the โ€˜urlโ€™ column to make those queries faster. Your other SELECTs are on โ€˜accountโ€™ which is a primary key so should already be indexed.

The admin functions select all rows from the DB. At some point you may need to page this.

Some might tell you that SQLite should be replaced with another database but Iโ€™d argue to keep it unless it is obviously an issue which would likely only come when you have concurrent database writes.

@aimaz amazing feedback, thanks. I have very little experience working with this things.
@neiman Maybe replace the emojis on the buttons with actual labels to make them better for screen reader users.
@TwoThousandStu on mobile there's no place for that. I'll play with it to see how it looks on a big screen. Thanks!
@neiman Confused? Replacing emojis with text shouldn't cause that many problems.
@neiman just FYI, the "Unlisted" setting doesn't make the replies any less visible. they'll still show up on people's timelines, they just won't be searchable.
@noodlejetski good point. I'll update it. Is it the right settings for threads? A few people told me to use it.
@neiman depends on the person's goals and preferences, I guess? as far as I know there's no way of making subsequent posts in a thread *not* show up on people's timelines.
@noodlejetski @neiman unlisted posts don't show on public timelines (local, federated). It is best practice if posting a thread publicly to make only the first post public and the rest unlisted.
@trendless @neiman ah, that makes sense, thanks!
@noodlejetski It actually doesn't work I just read
@jenzi (โ•ฏยฐโ–กยฐ๏ผ‰โ•ฏ๏ธต โ”ปโ”โ”ป
@neiman sounds like something @fediverse would find interesting and useful to know about.

@neiman

This is great!!!

Will do something testing tomorrow and try to help spread the word.

Really cool!

@neiman Or even better, instead of resorting to such auxiliary constructs, use services in the Fediverse that can do all this and don't bother people with thread chains

There are enough services in the Fediverse that can do long texts and Mastodon can do it too, if you let it
@crossgolf_rebel @neiman Please provide names and links to these kinds of tools
@Armadillosoft @neiman

You can use
#Sharkey #IceShriimp #Friendica #Hubzilla #Calckey #Akkoma (if the character limit fits) for something like this and still have all the features of the fediverse.

These services can also do much more than Mastodon.

Look at
https://jointhefediverse.net/?lang=en-us
or
https://youtu.be/fQ4Xm92vcq8 for Sharkey. the gaming focus at the end is a little too much but you can recognise the basic functions and more.

For example, I use the Fediverse service
#Calckey in the Fediverse, have 7,500 characters and a bag full of tools at hand that I don't have to rely on such bridges.

You should choose the software that suits your needs and not adapt your needs to the software. Old rule in fediverse ;)
Unfortunately, we always get a lot of flak for this, because MASTODON
๐Ÿ˜ฅ
ยกรšnete al fediverso!

Conoce sobre el fediverso y encuentra tu comunidad.

@crossgolf_rebel @neiman

Does Calckey allow editing of posts?

@Armadillosoft sure, even before mastodon allowed it. just like Sharkey, Misskey and IceShrimp.

there are not only likes but also reactions, I see all the pictures that a post has and not like Mastodon, which only shows 4 and simply hides all the others.
I can see which service/software the other person is using to post

The services have a drive folder for all media to use again and again, bookmarks can be sorted into folders and much more

@neiman

@crossgolf_rebel @neiman

All good to know. Thanks!

How about scheduled toots? And what is the post length limit?

@Armadillosoft I have no planned contributions and have not yet seen any need to inform myself about this

As far as I know, the native services can't do this, but possibly via one of the apps, but I'm not sure.

The character limit starts at 3,500 and can go up to 25,000. Our instance has a setting of 7,500. The admin can set this individually in the backend

@neiman
@neiman this is a tool for @pluralistic and his long threads ๐Ÿ˜ƒ

@neiman this is really awesome (and cute)

EDIT: ok i need a lot more coffee today and cannot read apparently, sorry sorry

https://social.hastily.cc/@neiman/114591328111324234

my instance has a 5k char limit, but I still think the threaded form has a lot of benefits for readability and shareability (if I'm making multiple points they can be nicely split into multiple posts and I can make posts that work by themselves mid-thread and boost them, etc)

it would be great if this had a way to set a custom char limit and even better if it let me split wherever I like (maybe with some magic syntax?). Then I can write out the entire thread and proof read it before posting

Neiman (@neiman@social.hastily.cc)

Key features: ๐Ÿ‘‰๏ธ Smart post splitting, avoiding breaking paragraphs or words, ๐Ÿ‘‰๏ธ Manual control of post breaks using the "=====" symbol, ๐Ÿ‘‰๏ธ A new "Thread" exposure mode: first post is public, the rest are unlisted to avoid spam, ๐Ÿ‘‰๏ธ Live preview, ๐Ÿ‘‰๏ธ Which other feature do you want? I'm not a professional developer, so feedback is welcome! Negative as well, that's how you study. Source code: https://codeberg.org/neiman/splinter (2/2)

Hastily
@cas @neiman ===== appears to be said magic syntax iiuc https://social.hastily.cc/@neiman/114591328111324234
Neiman (@neiman@social.hastily.cc)

Key features: ๐Ÿ‘‰๏ธ Smart post splitting, avoiding breaking paragraphs or words, ๐Ÿ‘‰๏ธ Manual control of post breaks using the "=====" symbol, ๐Ÿ‘‰๏ธ A new "Thread" exposure mode: first post is public, the rest are unlisted to avoid spam, ๐Ÿ‘‰๏ธ Live preview, ๐Ÿ‘‰๏ธ Which other feature do you want? I'm not a professional developer, so feedback is welcome! Negative as well, that's how you study. Source code: https://codeberg.org/neiman/splinter (2/2)

Hastily
@hipsterelectron @neiman I refine to critique to "this feature should be explained on the website itself"
@cas @hipsterelectron yes, you're right. I'm thinking how to make it clearer:)
@neiman I have been looking for exactly this tool! Thank you.
@neiman Nice one! Quick feedback: the language selection dropdown should be sorted alphabetically, so first translate/lookup local language, then sort. Currently, itโ€™s e.g. Danish, German, Divehi โ€ฆ
@goetz Noted! I'll fix it once I'm in front of a computer.
@neiman This is great! But it does not seem to work on Firefox. I get this error in the console: "The invalid form control with name=โ€˜consentโ€™ is not focusable."
@abnv oh, strange! I'm using Firefox myself. May I contact you in a few days to try to debug it? I'm afk at the moment.

@abnv @neiman Are you using the Adguard annoyances filter list?

The authorization form has an obligatory privacy policy checkbox with class "consent-container", which seems to be common among annoying GDPR cookie banners.

The tool is working like a charm after adding a cosmetic filtering exemption.

@Gabriel @neiman That seems to be the reason of the breakage. I turned off uBlock for the app and it worked fine. Thanks.
@Gabriel @abnv so if I change the class name it will be solved?

@neiman @abnv Yes, but I would rather ask the filter list mantainers to add an exemption than to deploy a new version

`splinter.hastily.cc#@#.consent-container` should be enough on the Adguard side

@Gabriel @neiman There are too many filter lists and new ones keep coming up. I'd suggest changing the class name.
@neiman Why not just use literally any other #Fediverse software than #Mastodon, so you don't have to make those ugly threads to begin with?
@tyil I actually like to read threads:)
@neiman I like to read long-form posts too, but #Mastodon deficiency to turn those into badly formatted threads is senseless nonetheless. So the question remains, why bolt on another tool when you can just fix the mess by using literally anything else than Mastodon as your #Fediverse software of choice?
@tyil @neiman fun fact: mastodon allows you to increase the character limit per toot, so there is no need to switch software โ€‹โ€‹
@dwarf @neiman Woah, did they finally introduce the ability to do that? Last I heard the only option to do that was to patch the software.

@tyil
Mastodon is the platform used by many instances on the Fediverse. It's unreasonable to expect every instance to replace it with some other platform just because I like to post long threads.

@neiman

@neiman

That's a very nice tool ! A few quick comments after a quick try:
- It doesn't seem to work on librewolf, the consent checkbox is not shown
- I don't know where images will be put. I'm used to put some in all posts, but it's not clear whether that will be done or everything will be put in the first post only
- On desktop the preview could be on the side instead of under

Thanks a lot for it !

@rakoo 1. I'll check it.

2. Right now it's all in the first post since I wanted to keep things simple for the first version. But l extend it soon since several people asked about it already.

3. Great idea! I'll try it out.

@neiman

Just tried with pleroma and it fails with a 500 for some reason.

Another possible feature: "disconnect" directly on the site to remove the auth token. I know I can do it from my instance but it's nice to be able to do it from third-party tools as well :)

@rakoo Thanks for the heads up. I'll try it myself with Pleroma to figure out what's nont working.

I'm not sure tecnically you can tell an instance to remove the authorization, but I'll look into it. It's a cool idea indeed!

@neiman Thanks a lot ! Looks great ! Is it possible to set the instance character number limit to adjust the number of posts to it ?
@fresseng you're not the first asking for this feature, I'll try to add it next week:)

@neiman

Nice! Glad to see replies is one of your top to-do items.

Is the 500-character limit hardcoded? I know some sites change it.

Would be cool if there wasn't a fixed tiny box to write in. A lot of my posting is done from a tablet, or when I really get going, my PC.

I also frequently forward my blog posts to Mastodon (Android share to fedilab, since WordPress.com is borken). They aren't super-long, but they're frequently > 500 chars if I quote some magazine article.