Microblogging in tabi
Summary and motivation
I’d like to propose an enhancement for tabi that would enable microblogging functionality. The idea is to provide a way to publish short-form content alongside traditional blog posts while maintaining the flexibility of a static site.
Since Zola allows for extensive customisation through templates, it could be possible to implement a dedicated microblogging section in tabi. A similar approach can be found in this Codeberg repository, with a live example available here.
Implementation details
I summarise some key features that would help to tailor the theme. Here’s what I think could be implemented:
- A separate feed from the main blog. I think this could be achieved through the existing
hide_feed_from_mainfunctionality. - Title behaviour. Microblog posts typically don't have a traditional title. Instead, the title could be dynamically taken from the
datefield in the frontmatter. It is important to note that thetitleof the frontmatter is required.- User-configurable title source. Users should be able to choose whether the title should be based on the date field or the title field. It might makes sense to use settings hierarchy.
- Handling posts without
dateproperty populated. If a post doesn't have adatefield, it would not be eligible for inclusion in the microblog feed. This ensures that only posts with a valid date are treated as microblog entries. - Automatic title. Although it wouldn't be directly part of tabi, as the title is not "relevant" for microblogging, it could be automated so that the title has the same value as the date with a pre-commit hook.
- Timezone handling in title. Display the date and time dynamically to the user or append the timezone offset to the date and time to avoid JS.
- Post display considerations.
- Include a "Latest Microblog" section on the homepage, alongside the existing "Latest Posts" and/or "Projects" sections.
- The page on which all posts are listed, should posts be displayed in full, or should they be truncated?
- If truncated, should there be a separate page for viewing the full post? If displayed in full, does a separate post page even make sense?
- Pagination. The microblogging platforms are known for their infinite scrolling. Would this be a better fit than traditional pagination?
This would help control what content we publish online. If we want to replicate microblog-type content on other platforms such as Mastodon, it is possible to use the EchoFeed tool. I discussed a similar concept in this issue on LinkAce.
Examples of Microblogging Implementations
Here are some examples of how others have integrated microblogging into their sites:
- https://zypper.net/status/
- https://pattycaketaffypull.com/status/
- https://flyfish.info/moments/
- https://crismicro.bearblog.dev/posts/
- https://digitallynick.bearblog.dev/status/
- https://rachnotes.bearblog.dev/short-notes/
What do you think about including this new feature in tabi?
I have some other ideas in mind to add new functionalities to tabi. Maybe all those ideas seem like adding too much complexity to the theme. Would it be approached from an ‘installable extensions’ point of view?
Checklist
- [x] I've searched existing issues to make sure this feature hasn't already been requested.
- [x] This feature aligns with tabi's philosophy (minimal JS, accessible…)
- [ ] I'm willing to contribute to the implementation of this feature.
I like a few examples I've seen from your list. I'd be happy to add this to tabi, but I don't have time to develop this myself right now.