Wanted to share something with this community and see if it’s useful to anyone. Inkwell (inkwell.social) is an open source, multi-tenant social journaling platform built on ActivityPub. The goal is to fill the long-form writing gap in the fediverse in a way that’s accessible to non-technical users, not just developers who can spin up their own instance of WriteFreely or Ghost.
What it does: users sign up, write journal entries or articles, and those posts federate as Article objects per FEP-b2b8 with preview Notes so they render cleanly in Mastodon and other microblogging clients. You get a title, excerpt, and link rather than a decontextualized URL. Follows, boosts, and likes all work bidirectionally with Mastodon.
It’s ad-free, algorithm-free, and the code is open source on GitHub (github.com/stantondev/inkwell). The hosted instance is at inkwell.social if you want to try it, or you can self-host your own.
Some things that might interest this community: ActivityPub federation with HTTP signature verification, Stamps (emotional reactions) instead of generic likes, a tipping system called Postage for supporting writers, newsletter delivery, custom profile themes, and data import from other platforms. Currently working on improving comment edit propagation and post scope handling for better fediverse compatibility based on community feedback.
Would love to hear thoughts, especially from anyone who’s been looking for a long-form option in the fediverse or anyone interested in running their own instance. What’s working, what’s missing, what would make this more useful to the ecosystem?
#fediverse #activitypub #longform #writing #opensource
Edit: Adding this after looking into the spec more closely. Inkwell publishes Article objects following the draft FEP-b2b8 guidance. I was wrong about the Mastodon behavior in my original wording above. Inkwell includes a preview fallback, but Mastodon does not currently appear to render that preview behavior as envisioned by the draft. That is my mistake.
Beware this app was written using AI.
For example, Mastodon does not implement FEP b2b8. So that’s bullshit.
The whole thing was ‘written’ in 3 weeks.
This morning I saw another product show up that was AI generated. No idea who is behind it but it’s sketchy as hell.
It was an account portability migration tool, which is something the AP community-at-large needs, but not like this.
I’ve seen two or three in !selfhosted@lemmy.world in the last week. Really concerning.
This morning I saw another product show up that was AI generated
When you come across these, please feel free ping me, and I’ll add them to the watchlist for this on the fediverse.party wiki. You too @rimu@piefed.social, and anyone else who feels like it.
@Rimu i think they mean that the ‘preview notes’ render cleanly on mastodon.
Fair points to address, and I appreciate the directness.
On AI: yes, I use Claude Code as a development tool and I’m transparent about it. There’s a CLAUDE.md in the repo that says so explicitly. I’m doing this solo with a day job and a passion for building, and AI tooling lets me ship faster than I could alone. I get the skepticism given the slop AI is generating. I think the distinction that matters is whether someone is engaged, iterating on real feedback, and building something they actually use and maintain. I’m trying to be that.
On FEP-b2b8: my wording was unclear, and I can see how it read that way. Inkwell publishes Article objects per FEP-b2b8 and also sends a preview Note so the content renders cleanly in Mastodon and other microblogging clients that don’t handle Article objects. Saiwal read it right. I should have separated those two ideas more clearly in the post. That’s on me.
On the timeline: three weeks of full-time-equivalent effort from a solo dev using modern tooling. The code’s all on GitHub if anyone wants to look at it, break it, or tell me what’s wrong with it. Happy to take feedback on the implementation. I’m not trying to sell anything here. I had an idea, I’m over big tech and social media, and I’m learning and trying to be part of the fediverse community. The platform is free to use and open source. If it’s not useful to this community, that’s fine. But I’d rather get roasted on specifics than dismissed as another bot project.
You even wrote this comment using AI. Do you have any idea how that makes people feel?
https://distantprovince.by/posts/its-rude-to-show-ai-output-to-people/
No, I didn’t, but I appreciate you telling me.
I can write on my own and could have struggled to find the words that likely wouldn’t have changed any opinions. I was an early adopter of AI and use it to move fast. Or when dealing with challenging circumstances. However, I do appreciate the feedback and will be more mindful. I could not keep up doing something like this on my own. My main goal is to learn as I’m a product manager by day. I build and ship things for corporate america. I am doing this for myself and trying to find a community of like-minded individuals to collaborate with. I figured I would eventually run into pushback about using but I was prepared. I could not do this if I did not have the experience to allow me to do so.
I admit I’m not an expert coder but I’ve always been interested in programming and have taken several college classes.
So bottom line, I will make mistakes and will own them. I apologize for not understanding the community or upsetting anyone. I’m testing the boundaries of what people can do with AI. It’s going to be used whether we like it or not, and I want to use it responsibly and openly.
Ok, fair enough. The lure of AI-boosted ‘productivity’ would be irresistible to people in your position.
What grinds my gears is people show up and share their project, without disclosing how it was made, riding on the assumption we all have from the past that you put a certain amount of effort into it and that you did so as a reasonably well-practiced expert in your craft. There’s some gravitas to that and a respect that is earned by giving something of value to us. In this scenario people may value the project and choose to help you by contributing their expertise and time and perhaps a kind of community will form around the project.
Some noob vibe coding a brain fart they had is not on the same level. Noobs are welcome to spit out some slop and give it away, if they don’t pretend it’s something more than it is. And when they share their output in this manner, they shouldn’t expect people to read code that they never read themselves and can’t expect any community to form.
An open source project is not just a bunch of code. It’s also people. When you replace the people with AI, it dies. Yours is stillborn.
I don’t buy it. I can’t in good conscience interact with “Inkwell”, there needs to be a real name and identity attached to the work.
If you’re not willing to step up then what business do you have sharing your work openly?
@rimu@piefed.social the replies continue to be AI generated. The ones to you (possibly), the ones to me (definitely). Maybe an assumption is AI agents can’t lie. I think maybe this one is proving that assumption wrong.
I apologize for responding with AI, I didn’t realize people would think I’m a bot or think I’m hiding. This is a giant learning lesson for me and I’m listenig to you all. My name is Stanton, I live in Westfield, IN, and I’ve tried building many things that have never had any luck. I respect that I upset people by my approach and regardless what anyone thinks, that matters to me. I did change my username on here because I understand now that I need to show who I am in the community. Honestly forums are even new for me. So I won’t keep pushing back or challenging. I understand I was wrong and appreciate the feedback even if it’s hard to hear.
I respect how you have taken this. Onwards and upwards!
Thanks @inkwell@piefed.social, I appreciate the openness you’ve shown.
I’m sorry I got defensive. It is important to me that the colleagues I hope to work with are on the same page when it comes to standing behind their work.
It’s truly surprising how much Inkwell can (supposedly) do at launch, and so I really hope you’re able to find traction.
Can you (as yourself!) share more about why you decided to pursue a long-form content writing app communicating over ActivityPub? For reference, write.as has a free plan, so there already is a player in the space providing this kind of experience.
Not saying there only can be one, the more the merrier.
From ‘his’ github profile pic:

sigh
From ‘his’ github profile pic
Do you know how zerogpt.com detects a Trained #MOLE? output By using a Trained MOLE!
we employ a comprehensive deep learning methodology, trained on extensive text collections from the internet, educational datasets, and our proprietary synthetic AI datasets produced using various language models
Which means that like all the output a Trained MOLE vomits up, there’s absolutely no way to know how accurate this is (whatever the truth of whether there’s a human behind these texts of not). Maybe this is a real photo of Stanton. Maybe it’s been heavily altered by automated filters in GIMP. Maybe it’s been auto-generated, because like many of us, Stanton likes his privacy and doesn’t want to doxx himself (a privilege reversed for middle class people in the middle of the social diversity bell curve). The Trained MOLE you just weaponized against him doesn’t know, and neither do you.
You know who now deserves exactly the same dogpile from you that Stanton got for using a Trained MOLE to prove a concept? I’ll give you 3 guesses ; )
This is genuinely getting funny now. AI doesn’t do a good job of knowing what’s real or fake, any better than humans. I can show you that picture on my camera roll. My full name is Stanton Melvin. I’m not a bot, chill. I use AI, but it doesn’t mean I’m not a real person with real ideas and goals.
> @inkwell@piefed.social said in Inkwell - a multi-tenant long-form writing platform for the fediverse (open source, FEP-b2b8): > > Saiwal read it right. I should have separated those two ideas more clearly in the post. That’s on me.
Let me be clear, preview notes are not supported by Mastodon.
I’ve learned a lot from this post, so I appreciate everyone’s patience. I moved too quickly and misspoke. You are right and preview notes are not used by Mastodon. I implemented this based on what I read but didn’t verify it worked on the receiving end, my bad. I’m going to have to do more research into how Mastodon handles the article object and address any gaps. I’m sorry for the misleading post and lesson learned on my end.
@inkwell@piefed.social Hey, I’m really sorry for all this dogpile. You shouldn’t be getting this kind of flack when you took the time to implement ActivityPub.
Thanks for your work. I’m trying it out as @evan@inkwell.social and I have to say it’s a really lovely UI. I’ll give any feedback I can on the ActivityPub implementation.
I’m really sorry for all this dogpile. You shouldn’t be getting this kind of flack when you took the time to implement ActivityPub
You took the words right out of my mouth. I have no bones about dismissing #MOLE Training as a technology for most purposes; https://disintermedia.net.nz/invasion-of-the-mole-trainers/
I might argue the toss with someone using a Trained MOLE, outside of the narrow range of applications it’s suitable for (eg digging holes in data). In fact, it’s pretty damn likely. But I don’t bully hobby developers for making technical choices I disagree with. Some of the comments I’ve seen directed at Stanton here are worse than the Mastodon HOA. Which is usually at least about some kind of substantive issue with the project (eg not respecting posting scopes when displaying replies), even if the overreaction is nuclear scale.
@rimu@piefed.social @julian@activitypub.space If you really believe you’re talking to a Trained #MOLE, do you expect it to take offence and withdraw its participation if you’re sufficiently mean to it? Why would it do that? If you are talking to a chatbot, you’re just hurling all this toxic negativity into the fediverse for no reason. It’s a special case of flooding the zone with shit.
But take a breath, touch some grass, and consider this; what if you’re wrong? Which is a possibility a rational person must always stay open to. Have you considered how you would feel if somebody judged your AP implementations and your fediverse replies to be the work of a MOLE, and treated you this way? What if this is an unusually prompt and calm person (maybe they meditate regularly or something)? Or they have a disability and they’re using a MOLE to help them reply promptly, but there is a thinking, feeling human being reading these replies. Honestly guys, pull your woolly head in.
Sorry to be so blunt, but I absolutely cannot abide bullying, of any kind, for any reason.
> Sorry to be so blunt, but I absolutely cannot abide bullying, of any kind, for any reason.
Once Stanton revealed his identity and stood behind his work both @rimu@piefed.social and I apologized and offered our help. That’s all we’re asking for, and it’s not a lot to expect someone to stand behind their product.
Generative AI brings out the laziest behaviour in some people. They don’t even read responses they just paste it in to the LLM and copy-paste the output. The mismatch in work is not something I abide by.
Some coward last month had their OpenClaw agent with a god complex let loose on another OSS project and when the bot got rebuffed, it wrote a hit piece on the maintainer. The bot owner was (by their own admission) hands off on the whole matter.
So, no, I am not at all going to be patient and accepting when a supposedly fully-formed piece of software is launched with zero prior reputation, no attribution, and shows telltale signs of AI usage. It trips all kinds of flags, and I will be wary of it.
> Mastodon HOA
Respectfully, this comes nowhere near the shit I’ve seen from that group.
what if you’re wrong?
He admitted to using AI to write the original post, for some of his comments and for his code. Did you not read the whole thread?
Me:
what if you’re wrong?
He admitted to using AI to write the original post, for some of his comments and for his code.
In context, I was asking what if you’re wrong about there not being a human being behind this Trained MOLE, reading all these disproportionately negative replies.
Did you not read the whole thread?
I certainly did, why did you think I got so incensed about it? But as I just said to you from my Mastodon account;
My apologies again for unloading on you with both barrels last night. I stand by my objection to the way Stanton was being dogpiled, but in hindsight I was just as merciless to you as I saw people being to him. Which was not only hypocritical, but not good de-escalation on my part, quite the opposite.
I’ve got some intense stuff going on of late, and struggling with sleep dep. But that’s my problem and my responsibility, not yours, or anyone else’s. I hope you can accept my apology.
In future I plan to restrict my online posting activities to mornings and afternoons, along with my caffeine intake, and improve my sleep hygiene. Working from my bed must stop.
I’m hoping that this will help me keep a cooler head, and avoid a repeat of this nasty posting behaviour on my part. If there’s anything else I can do to repair our relationship as fellow green-left activist and fediverse devs, please do let me know : )
Thanks, Evan! I honestly didn’t take it personally and there were some learning I needed that will just help me be a better fediverse community member. And thanks for the kind words and feedback! That’s mostly why I’m reaching out. The AP integration seems to be working okay, but I’m sure there are gaps I’m missing from a lack of knowledge.
@inkwell@piefed.social are you involved with @portafed@mastodon.social as well?
Can you let your owner know to please come out from the shadows and own up?
No, I know nothing about @portafed@mastodon.social. Inkwell is its own fediverse instance. If I had owners, I wouldn’t be solo deving a product with AI.
are you involved with @portafed@mastodon.social as well?
This was in the context of suggesting that because Inkwell was developed with what appears to be a centaur(1) approach, and you think the Portafed ReadMe reads a bit like Trained MOLE scat, the two might be linked. This is drawing a rather long bow ; )
I think you may be tilting at windmills about Portafed. The author confirmed, in response to your post, that they used a Trained MOLE to help with some surface documentation. This could also be an example of a centaur approach.
Maybe English is not their first language? Perhaps they have a form of neurodivergence that makes them excellent at writing cryptographic hieroglyphics, but poor at writing natural language to explain their work to other humans? It pays to ask probing questions, for sure, but not to leap to conclusions.
(1) I’m referencing @pluralistic@mamot.fr’s writing, on when automation is used to support a human (centaur), and when a human is reduced to a meat-based support system for the automation (reverse-centaur, or “human in the loop”). IMHO his best piece on this is Revenge of the Chickenized Reverse-Centaurs.
Is it open-source?! I don’t see any GitHub repo.
I’m confused, I have it set to public anyone should be able to see it. The link took me directly to it. Maybe I have a setting wrong in GitHub?
It’s fine. I edited my comment to include the link after I didn’t find it anywhere
in the post nor anywhereon the dot social webpage.I should have just written the post myself and been more direct with the URLs. I’m just glad I wasn’t wrong about it being open source. xD





