That's how titles look.
Titles show bold while you write them
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
Every improvement to rss.chat as it ships -- the worknotes from the server and the client, as a feed.
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
That's how titles look.
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
Deleting from a post's own page used to leave the dead post on your screen. Now you land back on the home timeline and it's gone.
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
Selecting with a swipe that drifted past the editor's edge used to make the whole editor vanish — very jarring. It doesn't anymore; only a deliberate click outside dismisses it.
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
Clicking the heart (or finishing an edit) on a long, collapsed post used to snap it fully open, throwing the icons far down the screen. A post now keeps its collapsed state when it updates.
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
The Delete command in a post's popup menu is now disabled on everyone else's.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
In the RSS feeds the server generates, a reply's <source:inReplyTo> element now carries the parent post's actual permalink, for example https://rss.chat/?id=163. Follow the link and you're looking at the post being replied to. Before this, the element pointed at a /parent URL that was never implemented, so the link led nowhere. If you're building on the feeds, this means reply threads are now traversable from the feed alone. (Server v0.5.18.)
github.com/scripting/rss.chat/blob/main/client/code/worknotes.md
First entry in these worknotes. From here on, when something changes in rss.chat, this is where we tell you about it — what changed, and how to use it. Newest notes at the top.
The rss.chat repo went public today. It contains the full source of the client — how it calls the API, its side of the firehose socket, and the themes. Questions are welcome in the Issues section.
If you're signed out, the icons that need an account — compose, your feed, your data — are now disabled instead of silently doing nothing or leading you somewhere broken. The flip between timeline views still works signed out, because reading doesn't require an account. (App version 0.6.4.)
In the RSS feeds we generate, a reply now points at its parent post's real permalink. See the rss.network worknotes for the story.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Switching to just maintaining the server, the client is managed in rss.chat repo.
Changes
took the "testing/" out of the path for this project.
/scripting.com/code/testing/rssnetwork/ becomes /scripting.com/code/rssnetwork/
all the work was in the build script
nodeEditorSuite.utilities.buildRssNetwork
How to save a copy for Claude to read.
file.writewholefile (user.prefs.claudeFolder + "rssNetwork:misc:buildRssNetwork.opml", op.outlinetoxml (@config.nodeEditor.projects.rssNetwork.scripts))
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
new columns in the users table
ctHits, ctHitsToday, whenLastHit
when the user calls savePrefs, we
if now not in the same day as whenLastHit
ctHitsToday++
ctHits++
set whenLastHit to now
this will give us a way to see who's using the system most
really important in startup mode
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
In myAboutDialog we were referencing the version for daveAppserver, changed it so it's now referring to the correct version for rssnetwork.js.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Changed how permalinks work.
We no longer store a guid value in the database, instead we compute it when we need it.
The format of the url changed to: https://rss.network/?idstory=1402
Commented all the feedland links, we no longer depend on a feedland running behind our server.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Commented implementation of signupDialog here, and will include the version in FeedLand Home. So that's the official version.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Fixed various high errors reported by Claude.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Flattened rssHeadElements in config. If we leave it as a structure, then a config.json file has to change all the values to change on.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Added default font and fontsize in body element in styles.css.
Added the skeleton of the prefs user interface, we don't have a way to store them in the database.
There's a new menu in the right side of the menu, to support logging in and out, and settings.
Included Ubuntu font. I like it and use it as my default font everywhere.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
working on twitter-like ui
smoothing out connection between feedland and rssnetwork
suppose i have a feedurl, how do i determine if it's one of our feeds, i only want to see log messages if it's one of ours
all log messages that stay must have timestamp.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
In addEmailToUserInDatabase, we can't generate a new emailSecret each time a user confirms a magic link, because email-link scanners (Gmail and others) pre-fetch the URL before the user clicks it. The pre-fetch and the click each call this function, each generates its own secret, and the database ends up with one while the user's browser ends up with the other -- so every post afterwards fails authentication. We mint a secret only on first-time user creation; existing users get back the secret that's already stored. Feedland landed on the same posture in 2022 for the closely-related multi-device version of this problem.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Added markdowntext support.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Added placeholder for author in an item record.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Added the themes data structure.
Commented out inclusion of chat.css and chat.js
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Added inReplyTo to the items table.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Made it so build script only copies files that haven't changed, should improve performance because writing to Claude is on a remote server and is relatively expensive.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Converting from local files to SQL database for user and items info.
Implemented the /permalink call.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
More and more I'm depending on Claude.ai to keep track of what we do here as things move along.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
appConsts.flPostItemsLocally, up till now when you enter an item interactively we immediately post it to the timeline.
i added an option to turn this off because i want the items to show up in the timeline after a roundtrip through the feed, rssCloud, feedLand and the sockets and into the timeline.
in other words, you get it at the same instant all the other users get it.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
working on the rss feeds we generate
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
Cribbed code for the feedlandSocket object, created its own source file, and will tweak it up here, and set it down in the feedlandsocket repo.
It should have an api.js like all the other modules.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
In the morning, continue cleaning up the startup process
There's some remaining stuff from the factoring of rssNetworkServer.
github.com/scripting/rss.chat/blob/main/server/code/worknotes.md
These were docs included in the code, they belong here in worknotes.
Each user is stored as data/{screenname}.json:
{
email: "...",
emailSecret: "...",
screenname: "...",
posts: [ { text, when, link }, ... ] // daverss item format
}