When you post from WriteFreely, a long-form blogging platform, the content appears differently on Mastodon than it does on WriteFreely itself. Mastodon users see a truncated preview with a link to the full article instead of the complete text. This behavior is by design and stems from how ActivityPub, the underlying protocol, handles content from different software types. This article explains why WriteFreely posts are truncated in Mastodon, how the federation link works, and what both WriteFreely users and Mastodon readers can expect when interacting with long-form content across the fediverse.
Key Takeaways: WriteFreely and Mastodon Post Federation
- ActivityPub content-type mapping: WriteFreely sends articles as
Articleobjects, which Mastodon displays as truncated previews with a link to the original post. - Preferences > Post Visibility > Federated Timeline: Mastodon users see only the first 500 characters of a WriteFreely post in their home or federated timeline.
- WriteFreely link preview in Mastodon: A card with the article title, excerpt, and image appears, allowing Mastodon users to click through to the full text on WriteFreely.
How WriteFreely and Mastodon Interpret Each Others Content Types
WriteFreely is a minimalist blogging platform designed for long-form writing. Mastodon is a microblogging platform with a 500-character limit per post. When these two platforms federate over ActivityPub, they must reconcile their different content models.
ActivityPub defines multiple object types. WriteFreely sends posts as Article objects. Mastodon primarily sends posts as Note objects. Mastodon does not display Article objects in full. Instead, it renders them as a summary card containing a title, a short excerpt, and a link to the original article on WriteFreely.
This behavior is not a bug. It is a deliberate design choice by Mastodon to preserve the character limit experience for its users. If Mastodon displayed the full text of a 2000-word WriteFreely article in the timeline, it would break the scrolling experience, overwhelm the character count, and confuse users who expect short posts.
WriteFreely Post Structure in ActivityPub
When you publish a post on WriteFreely, the software generates an ActivityPub payload with the following fields:
- type:
Article - name: The title of your post
- content: The full HTML body of the article
- url: The permalink to the article on your WriteFreely instance
- summary: A short excerpt, typically the first 140 characters of the article
Mastodon receives this payload and checks the type field. Because the type is Article rather than Note, Mastodon applies its preview rendering logic instead of displaying the full content.
Mastodon Preview Rendering Logic
Mastodon uses a built-in link preview generator for all federated content that is not a Note. When it encounters an Article object, it extracts the name field as the card title, the summary field as the card description, and the url field as the link target. It also attempts to fetch any Open Graph image from the article URL to display as a thumbnail.
The Mastodon timeline shows this card in a compact format. Users see the title, a short description, and a link labeled “Read more” or the article domain. They must click the link to view the full article on WriteFreely.
What Mastodon Users See When a WriteFreely Post Appears in Their Feed
- Scrolling the home or federated timeline
A WriteFreely post appears as a card with a title, a short excerpt of about 140 characters, and a thumbnail image if the article includes one. The card has a link to the full article on WriteFreely. - Clicking the card or the link
Mastodon opens the article in the in-app browser or your default browser, depending on your Mastodon client settings. The article loads on the WriteFreely instance where it was published. - Interacting with the post
You can favorite, boost, or reply to the WriteFreely post from Mastodon. Your reply is sent back to WriteFreely, where it appears as a comment on the article. Mastodon users see the reply in their timeline as a normal Mastodon post. - Viewing the post details
If you open the WriteFreely post in Mastodon’s detailed view, you still see only the card preview. The full article text is never fetched into Mastodon. You must click through to WriteFreely to read the entire article.
Common Issues and Misunderstandings With WriteFreely Federation on Mastodon
WriteFreely Post Shows Only a Link With No Preview
If the WriteFreely instance does not return Open Graph metadata or if the ActivityPub payload is missing the summary field, Mastodon may show only a plain link instead of a rich card. To fix this, the WriteFreely instance administrator should ensure that Open Graph tags are enabled in the WriteFreely configuration file. The relevant setting is opengraph set to true in config.ini. After changing this setting, restart the WriteFreely service.
WriteFreely Replies Appear as Separate Posts in Mastodon
When a Mastodon user replies to a WriteFreely article, the reply appears on WriteFreely as a comment. However, on Mastodon, that reply appears as a standalone post in the timeline, not nested under the original WriteFreely article. This is because Mastodon does not maintain a thread context for Article objects. Mastodon users who want to follow a discussion must manually navigate to the WriteFreely article to see the full comment thread.
WriteFreely Posts Do Not Appear in Mastodon Search
Mastodon full-text search indexes only the content of Note objects. Because WriteFreely posts are Article objects, their full text is not indexed in Mastodon search. Mastodon users cannot find WriteFreely articles by searching for keywords from the article body. They can only find them by searching for the article title or the author’s handle. This limitation is inherent in the platform design and cannot be changed by configuration.
WriteFreely vs Mastodon: Post Display Comparison
| Item | WriteFreely | Mastodon |
|---|---|---|
| Content type | Article | Note |
| Character limit | Unlimited | 500 per post |
| Display in timeline | Full article text | Card with title, excerpt, and link |
| Search indexing | Full text indexed | Only title and author indexed |
| Reply handling | Comments appear below article | Replies appear as separate posts |
This table shows the fundamental differences in how each platform treats posts. The federation behavior is a direct result of these design choices at the software level.
WriteFreely users who want their full article text to appear in Mastodon can consider posting a short summary on Mastodon with a link to the full article. This gives Mastodon users the option to click through while keeping the timeline clean. Mastodon users who frequently read long-form content can follow WriteFreely authors directly and use their Mastodon client’s in-app browser to open articles without leaving the app.
To check how your WriteFreely instance federates with Mastodon, publish a test article and then search for your Mastodon handle from a Mastodon account on a different instance. If the card preview appears correctly, federation is working as designed. If the card is missing or broken, check the WriteFreely Open Graph settings and the ActivityPub payload in your server logs.