select navigate esc close

rss.chat worknotes

npub1j5a28hh4cgqpja7tfunvwa77fjcygvhh7yv5q47zjq4a3qpuzq7qwvz7gk@drss.io

Every improvement to rss.chat as it ships -- the worknotes from the server and the client, as a feed.

You can point it at any hub

5 Aug 2026

Two new settings, both with working defaults, so there's nothing to configure: `flWebsubEnabled` is on, and `urlWebsubHub` is Andrew's hub at `https://rpc.rsscloud.io/websub`. Put a different address

rss.chat feeds now support WebSub

5 Aug 2026

[Andrew Shell's rssCloud server](https://andrewshell.org/2026/07/rsscloud-server-4-0-now-supports-websub-notifications/) speaks both protocols as of its 4.0 release, over one shared list of

Updating a server you already run

5 Aug 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. No new packages this time, so there's no `npm install` step.

Fixed a bug in feeds we generate

2 Aug 2026

We were using the wrong value from config.json to build the URL for the `<link>` element in RSS.chat-generated feeds. Fixed in server v0.6.12, on both public servers. Thanks to

Updating a server you already run

2 Aug 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. No new packages this time, so there's no `npm install` step.

Updating a server you already run

1 Aug 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. No new packages this time, so there's no `npm install` step.

Security fix in v0.6.11 -- please update

1 Aug 2026

A user contacted us about a potential security issue. We responded quickly and with v0.6.11 the issue is removed. If you're running rssnetwork.js on a publicly visible server, please install the new

The server will read a file over the web for you: /readhttpfile

31 Jul 2026

A browser page can only fetch from its own server unless the far server opts in, and most don't. That was the wall in front of the Scripts menu (the client-side story -- see the client worknotes):

Updating a server you already run

31 Jul 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. No new packages this time, so there's no `npm install` step.

You can add your own menu to the menubar -- the Scripts menu

31 Jul 2026

Point one new config setting, `urlMenuOpml`, at an OPML file on the web, and the app builds menus from it: every top-level node in the outline becomes a menu in the menubar after Docs, nesting

And reallysimple, the feed reader FeedLand and other apps are built on, now understands rss.chat conversations

29 Jul 2026

Until today it read our feeds but quietly discarded the two pieces that make a conversation a conversation -- which post a reply is replying to, and where a post's replies live. So an app reading

That error message at startup is gone

29 Jul 2026

Every time the server started, it printed `webSocketStartup: theWsServer.listen is not a function` -- alarming to read, especially on a new install, and entirely misleading: websockets were working

Getting into your own server no longer waits on email

29 Jul 2026

Sign-in is a magic link, so until a new server can send mail, nobody can get in -- including the person who just installed it. That's a discouraging place to be stopped, and it's exactly where John

Updating a server you already run

29 Jul 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. No new packages this time, so there's no `npm install` step.

Replying through the API works with either field name

27 Jul 2026

When you read a reply, the field pointing at its parent is called `inReplyToNum`. When you post one, the API expected `inReplyTo` -- and if you sent the other name, your reply was accepted but landed

And the API docs were rewritten to earn that story

27 Jul 2026

The [newpost entry](https://github.com/scripting/rss.chat/blob/main/server/docs/api.md) now opens with the smallest call that works -- one field of markdown -- followed by a complete call you can

Updating a server you already run

27 Jul 2026

Get the new `rssnetwork.js` and `package.json` from the repo, run `npm install` (one new package, the markdown renderer), and restart.

Posting through the API got simpler: send markdown or HTML, whichever you have

27 Jul 2026

Until today the API expected HTML -- send only markdown and your post came out empty, which is exactly what happened to the first person who tried. Fixed, as of server v0.6.6 on both public servers:

The RSS.chat network has a name and a front door

26 Jul 2026

All the open pieces around the app -- every user's RSS feed, the everyone feed, the OPML subscription list, the source namespace, textcasting, markdown in the feeds, the firehose, rssCloud, the API,

And every server can now back itself up, nightly

25 Jul 2026

One line in config.json turns it on: `"flNightlyBackup": true`. Every night the server writes its whole database -- users, posts, likes, files, media -- to one dated JSON file in `data/backups/`,

Updating a server you already run

25 Jul 2026

Get the new `rssnetwork.js` and `package.json` from the repo and restart. On the first restart you'll see a log line for each user whose feed gets backfilled, then it's quiet. Add `"flNightlyBackup":

Every user has a feed from the moment they sign up

25 Jul 2026

It was reported that until someone posted for the first time, their feed address answered with a 404 -- which looked broken to anyone who subscribed to the whole community from the subscription list.

The Docs menu now reaches everything

25 Jul 2026

Two new submenus under Docs: Blog posts, with the Scripting News pieces that tell the rss.chat story -- what it's for, how the ecosystem fits together, today's post about the API -- and Github Repo,

A whole conversation in one call: /getthread

25 Jul 2026

Every conversation on rss.chat has always been walkable through the feeds -- each post's item points at a comments feed, each reply can point at its own, and the

The hit counter now counts only rss.chat

25 Jul 2026

When the app starts up it registers a hit, so there's a running count of how much rss.chat is used. But everyone running their own server uses this same client -- and their visitors were being

These worknotes are a feed now

24 Jul 2026

Subscribe to [https://news.rss.chat/worknotes/rss.xml](https://news.rss.chat/worknotes/rss.xml) and every improvement to rss.chat arrives as it ships -- the worknotes from the server and the client,

The Return key stopped breaking paragraphs at the wrong spot

23 Jul 2026

A bug DW reported earlier but couldn't reproduce finally showed itself: paste a chunk of text that includes a link, put the cursor somewhere later in the text, press Return -- and the break landed at

A security fix -- posts are now cleaned as they're saved -- and the first update note of a new kind: how to bring a server you already run up to date

23 Jul 2026

A post's text is written by its author and then shown to everyone who reads the timeline, which means anything hidden inside it runs in every reader's browser. Until today the server stored a post's

Updating a server you already run

23 Jul 2026

This is the first of a kind of note you'll see here from now on: when a change matters to people running their own installs, the steps to update will live right here in worknotes. For this one: 1.

Paste an image into a post -- that is the whole feature

22 Jul 2026

Copy a screenshot or an image file to the clipboard, click into the composer, paste: a small "Uploading image..." note appears at the cursor and a moment later the picture takes its place, sized to

Posts can carry images now, and the server stores and serves them itself

22 Jul 2026

A new endpoint, `/uploadmedia`, accepts an image from a signed-in user -- up to 2MB, sent base64-encoded in the request body with the content type as a parameter -- stores it in a new `media` table

rss.chat itself now runs on SQLite

22 Jul 2026

This morning's note said an rss.chat server *can* run on SQLite; by this evening the flagship server *does*. Both production servers were upgraded to the new software (v0.6.0) during the afternoon,

The install docs also gained the piece that was missing: email

22 Jul 2026

Sign-in is a magic link, so a new server can't sign anyone in until it can send mail -- and nothing documented how. New page:

SQLite is now the default, everywhere

22 Jul 2026

demo.rss.chat migrated this morning -- 58 users, 210 posts, 153 likes, 138 served files, five minutes -- so both public servers now run on one-file databases. davesql 0.7.0, the package carrying the

The Software versions dialog now tells you which database engine the server runs on

22 Jul 2026

Servers can now run on SQLite as well as MySQL (that's the day's big server-side story -- see the server worknotes), and the dialog's last line follows along: it says "SQLite version" or "MySQL

A startup crash that wore two disguises

22 Jul 2026

If you left the editor open with a draft when you last used the app, the next startup could crash quietly: the app tried to restore your draft before one of its writing tools -- the piece that turns

And every server now has a backup story: export and import

21 Jul 2026

`node rssnetwork.js export backup.json` writes the whole database -- users, posts, likes, feeds -- into one JSON file and exits without starting the web server; `node rssnetwork.js import

An rss.chat server can now run on SQLite -- no MySQL, no database setup of any kind

21 Jul 2026

One new member in config.json chooses the engine: `"database": {"flUseSqlite": true, "databaseFilePath": "data/myserver.db"}`. The database is a single file that creates itself, tables and all, the

Three small courtesies for writers, all shipped today

20 Jul 2026

Posts no longer carry blank lines at the end -- if your post trails off with empty paragraphs or stray Returns, the server trims them when it saves, so nothing renders as mysterious empty space below

The reply editor got out of your way

20 Jul 2026

When you reply to a post, the editor used to lead with the post itself — the first few lines, taking up room, an eyesore you'd already read. Now it shows the author's avatar and name, and under the

Software versions, in one place

19 Jul 2026

Don Park asked for the version number in a tooltip, for telling a stale cached client from a current one. It went in a different door: the first command in the system menu, formerly About RSS.chat,

The goodnight dialog no longer leaves a dead app behind

19 Jul 2026

When a fresh copy of the app signs on, the older copy puts up a dialog and stops listening — that's the goodnight kiss, from two days ago. But if you dismissed that dialog by clicking outside it

The browser tab now shows your server's name

18 Jul 2026

The home page's title was hard-coded to "rss.chat" — every instance, whatever its name, said rss.chat in the tab. Now the title comes from the server's `productNameForDisplay` setting, so

The `/feed` endpoint can now return the feed as JSON

18 Jul 2026

As of server v0.5.32, `/feed` takes a `format` parameter: [format=xml](https://rss.chat/feed?screenname=dave) (the default) returns the RSS document as always, and

threadwalker caught up with yesterday's feed change

18 Jul 2026

Ricardo reported on [issue #14](https://github.com/scripting/rss.chat/issues/14) that the walker printed `?` for every author -- it was still reading the item-level `source:account` element that came

The firehose is now documented, with two working demo apps

18 Jul 2026

Every rss.chat server broadcasts every new post, edit, and like over a websocket the moment it happens -- the same stream the shipped client uses to keep timelines current. As of today there's a doc

`source:account` moved to where the spec says it goes

17 Jul 2026

Our feeds had been putting a `source:account` element inside every item. The [source namespace](https://source.scripting.com/) defines it as a channel-level element — it says whose feed this is,

Only one copy of the app runs at a time now — the goodnight kiss

17 Jul 2026

If you're signed in and open the app in a second tab, or another browser, or another machine, the older copy puts up a friendly dialog: the app is running in another tab, click OK to reload this one,

The home page now announces its own feed

17 Jul 2026

Every server's home page carries a feed auto-discovery link — the standard `<link rel="alternate">` in the page head, pointing at that server's everyone feed. Point a feed reader at the home page

The install doc learned from two real installs today

16 Jul 2026

Scott Hanson tested the new database-mode instructions by having an AI agent do a fresh install on a throwaway server — it worked, and the one thing it had to hunt for became [issue