#ktistec 198 hashtags

Todd Sundsted

Would it be useful to customize the rendering and presentation of posts by actor?

I follow a lot of actors and I get a lot of posts, and I'd like the posts from some actors to stand out, and I'd like the posts from others to be more inconspicuous. Or maybe I want to use color to help visually categorize posts from actors I follow, based on subject matter.

Does this sound like a useful feature?

#ktistec #fediverse

Todd Sundsted

Ktistec will get proper alt text editing in the next release.

Figure 1: Image of the alt text modal superimposed on an image in a post.

This is in addition to existing figure/figcaption support. Captions and alt text serve two different but complimentary purposes.

#ktistec #alttext

Todd Sundsted
Release v3.2.5 of Ktistec

I rolled out a lot of features over the last several weeks and created a lot of bugs in the process. Release v3.2.5 of Ktistec is mostly about fixing those bugs. I did implement two requested features, however: support for editing posts in Markdown and support for Open Graph metadata. Here's the full list of new features:

Added

  • Support for editing posts in Markdown. (fixes #25)
  • Support for Open Graph metadata on actors and objects. (fixes #71)
  • Support for uploading a site image.
  • Internal table of contents page.
  • Poll expiry notifications.

馃巹 I'm working on support for poll creation and management now. It's also time for a performance improvement pass or two.

#ktistec #crystallang #activitypub #fediverse

Todd Sundsted

Ktistec now generates a table of contents for all posts with canonical (pretty) paths (/about-the-name-epiktistes rather than /objects/6QNom799BYc).

One of the original goals I had for Ktistec was blogging. At some point, I lost track of my "blog posts". I added this to make it easier to see what I've published.

The current Epiktistes table of contents.

The table of contents is currently only visible to authenticated users.

Apologies in advance for the flood of updates as I add canonical paths to older posts!

#ktistec

Todd Sundsted

I have Markdown editing working in Ktistec!

Which post was written in Markdown?

Figure 1: Two posts. One created in HTML (via the rich text editor), the other in Markdown.

Voil脿!

Figure 2: The answer is the second post.

This is an often requested feature. It also makes Ktistec usable in browsers when JavaScript is disabled. The Markdown editor supports autocomplete and autosave, just like the rich text editor. Expect this to show up in the next release.

#ktistec #activitypub #fediverse #markdown

Todd Sundsted
Release v3.2.4 of Ktistec

The big feature in release v3.2.4 of Ktistec is support for viewing and voting on Mastodon polls (AKA FEP-9967: Polls). This feature took a surprising amount of work. Some of the effort was due to my struggles with visual design, but getting the behavior right was also tricky. For example, a "vote" is just an ActivityPub Note, but unlike other notes, it shouldn't appear in a poll's replies (it could, but that would be redundant and confusing). So I had to add exceptions throughout the code to deal with this. A custom Vote object type would have been nice in the original implementation.

Added

  • Support for viewing and voting on polls. (fixes #49)
  • Added tooltip to notifications menu item summarizing new notifications.

Fixed

  • Improved wrapping of actor panel follow/refresh information. (fixes #130)
  • Autocomplete now works correctly when adjacent to a Trix attachment.
  • Image title attributes are now preserved.

Changed

  • Moved avatars to the bottom of the object detail view.

Thank you @jayvii for the build fix!

#ktistec #crystallang #activitypub #fediverse

Todd Sundsted

After thrashing through several attempts to add a smooth transition to the poll partial after the user votes, I realized that the best solution was hiding in plain sight. Turbo already sets the busy attribute on a turbo-frame element while the request is in progress, and adds a complete attribute when the request is complete. The only thing required was the styling!

#ktistec #hotwire #turboframes

Todd SundstedJayVii
Todd Sundsted

Polls are rendering!

screenshot of the latest emoji poll rendered on the ktistec server

I'm working to get all of the little visual elements available across the Fediverse to render in a usable way on Ktistec. When released, users will also be able to vote on polls.

#ktistec #activitypub #fediverse

Todd Sundsted
Release v3.2.3 of Ktistec

Release v3.2.3 of Ktistec includes two big features:

  • FEP-1b12 Group federation
    Improved federation with Lemmy and other forum-type servers. Ktistec supports community and thread follow/unfollow, as well as up-vote/like (down-vote/dislike is supported but there is no visual affordance for that yet).
  • FEP-9098 Custom emojis
    Support for viewing custom emoji in posts and on actor profiles. Ktistec does not yet support custom emoji creation and management.

The full changelog:

Added

  • Support for viewing custom emoji in posts and on actor profiles.
  • Actor type (Person, Group, etc.) overlay badges on actor panels.
  • Colored fallback avatars for actors without icons.
  • Support for robots.txt.

Fixed

  • Federation with Lemmy and other servers that support FEP-1b12.
    • Shared inbox support for local actors.
    • Serialization of Undo includes the undone activity.
    • Serialization of Like and Dislike does not.
  • Notify only once for an object's first received activity.

Changed

  • Accumulate metrics by hour for finer granularity.
  • Clean up presentation of public followers/following pages.

The next release will include support for Mastodon polls (FEP-9967).

#ktistec #crystallang #activitypub #fediverse