We're happy to announce the release of NodeBB v4.3.0, which contains native support for remote categories, bringing better integration with other NodeBB forums, WordPress, Lemmy, PieFed, mbin, and other "group-based" implementors on the ActivityPub network! ## What does this mean? :thinking_face: It means that starting with this release, you will be able to "browse" to other categories simply by searching for them in your `/world` page. Just like with regular categories, you can "track" or "watch" remote categories — the former will show up in your `/unread` page, and the latter will also send notifications on new topics. Prior to this change, remote categories were rendered just like regular users, and there was some confusion over who was a user and who was a publisher. The integration with blog platforms like WordPress also mean you'll be able to use NodeBB kind of like a feed reader, with built-in notifications when new content is received. We're hoping to also extend this to support Ghost as well :hand_with_index_and_middle_fingers_crossed: Some examples of categories loaded remotely in this NodeBB: * ["Fediverse" on piefed.social (running Piefed)]() — `@Fediverse` * ["ActivityPub Protocol" on SocialHub (running Discourse)]() — `@ActivityPub Protocol` * [Vivaldi Browser Blog (running WordPress)]() — `@Vivaldi Browser` * ["General Climbing News" on community.openbeta.io (running NodeBB)]() — `@General News` * [Fediverse memes (running Lemmy)]() — `@npub14hjt...v79r` ![da0f00e4-aeac-4b7b-bedd-8d20e2a7a7f7-image.png](image) ![9b2e5ab5-d2cc-46be-81aa-1e82057e0652-image.png](image) ## Other notable changes in v4.3.0 ### Chat allow/deny list :left_speech_bubble: There was some desire for more fine-grained support for allow/deny lists for the chat system. This is now available in v4.3.0. Per @<baris>: &gt; Leaving allow list empty would mean anyone who is not in deny list can message you. &gt; Leaving deny list empty would mean anyone who is in allow list can message you. &gt; If both are empty everyone can message you. &gt; Current restrictChat toggle can be turned into a toggle to disable chat completely. &gt; Upgrade script can add the users following to the allow list if they have restrictChat turned on. ### Show number of topic watchers :eyes: You are now able to see the number of users watching a specific topic alongside the existing stats (posts, views, etc.) ![80bc61e4-0bbd-4dce-ab3b-6ab9df2eb1b1-image.png](image) ### Accessibility updates * Avatar background colours are now selectable via keyboard navigation * Post drafts are now accessible via keyboard navigation ### ... and of course * Bug fixes and security updates
Hey @Mike McCue, are Flipboard collections (or are they magazines? I forget the term!) federating out as `as:Group`? I'm wondering whether it would be possible for NodeBB to load them in as categories, and be able to browse them natively... I'm just not able to easily find them in the Flipboard UI right now, but I'm relatively new at using the app :)
Happy Tuesday! Today we've updated the NodeBB community forum onto the `remote-categories` testing branch, which means that users on the open social web that identify themselves as "Groups" will be rendered in NodeBB as **categories**. Prior to this, they looked like users. Here are some examples of remote categories: * [Comic Strips (on lemmy.ml)]() * [Star Trek Social Club (on startrek.website)](https://community.nodebb.org/category/startrek@startrek.website) * [Social Web Foundation (a WordPress blog)]() ActivityPub "groups" and forum categories have quite a few things in common — they don't usually post topic themselves, they "contain" topics, and they are usually administered by a separate group of users (moderators!) In many ways, these groups lend themselves to categories much more easily than they do as users. ### Notes: * We will likely be releasing this as v4.3.0-alpha this Wednesday. Probably this means you don't want this on a live forum just yet. * A lot of the backend logic is complete, but a lot of the frontend UX will be worked on. * You can "search" for categories (via ["in categories" in the search page]()), paste the full handle in order to instruct NodeBB to pull a new category in. * You can now no longer mention a remote category. Instead, create your topic **right in that category itself**. As it should be :smirk_cat: . * Remote content coming in that is slotted into a remote category will still show up in [your "world" feed](). That is still intended to be where discovery of content outside the local NodeBB instance will take place. * Report any bugs or confusing behaviours (and there will be some) here. ### Screenshots ![4872fc8c-a679-4968-9daf-84bedb8bf237-image.png](image) ![08c3972a-6c7e-4cef-937c-0c4830770a8a-image.png](image)
@npub1psz0...d0w0 recently made a statement that got me thinking about our place in the open social web, and the direction it's going. He says to @Sean Tilley and @Evan Prodromou re: SXSW &gt; #FediverseHouse this feels like an irrelevant echo chamber, I really miss the grassroots #DIY that built this space in the first place. This #maistreaming is too much noise vs signal... currently the grassroots #DIY space is a hollow shell _(two posts combined)_ That immediately got me on edge as someone new to ActivityPub in 2024. Does this mean I'm "mainstream", and somehow "bad"? Mainstream adoption is **good** and a step in the right direction. I personally think ActivityPub isn't ready for general mainstream consumption, but we as a group are rapidly closing the gap and I'd much rather continue building momentum instead of waiting for the opportune moment. Here's the hot take that I was going to originally write, but thought came off as too combative: &gt; It sounds like you feel like ActivityPub development only counts when you're toiling away in obscurity. As someone who's hacking away on a platform that hasn't been "mainstream" for over a decade (forum/BBS software), I bristle at the notion that what I do doesn't count as grassroots or DIY. You don't have to be the perpetual underdog to do good in the world. I might be wrong, but it sounds like Hamish feels like big players are coming in and taking the ball away... that big players' clout and presence takes away from the attention that smaller DIY projects receive. Maybe... but if the fediverse is 100x larger with a big player, and they take 99% of the eyeballs, have they really taken anything away from you?
Wanted to start a convo with @John O'Nolan from Ghost and @npub1tpdq...pa2l from Discourse about AP resource discovery. A common use case from fediverse users is to be linked out to a site, and attempt to "bring it in" to their local instance/app of choice. This is done by taking the browser URL and pasting it into their site/app's search bar, or equivalent. For example: * Ghost: * Discourse: any forum topic For context, last night I discovered that Ghost's latest blog post didn't make it into NodeBB, due to a bug on my end. I attempted to resolve it via URL but there was no AP resource at that URL. I ended up having to query the instance actor (which I _happened to already know_), and looking at the outbox. To my knowledge there is **no way** to find a Discourse post or topic's AP resource ID without having a local Discourse account. Would it be possible for you to send back an `HTTP 301 Moved Permanently` (or similar) if the `Accepts` header contains one of the AP-related types? N.B. This probably has some overlap with @Evan Prodromou's [HTTP Discovery Task Force](), a 308 is recommended there.