Major pnut improvements in progress – Long posts

Major pnut improvements in progress

Robert
@pnut developerd
Notes on wiki.pnut.io
I take being emperor seriously but I feel like I'm the only one.

@33MHz on Pnut

I love having all these parts in my head.

I'm working on a major overhaul of the API and front end.

  • file improvements: processing new derivatives, Rust backend, and higher throughput/bulk processing. Faster int'l time-to-upload with an AWS Lambda on the front, then processing later, localized.
  • break out work that should be on background jobs: post, user, file work, fan-out processes, when big things happen.
  • separate pnut.io frontend from backend: server client with internal API.
  • modernize code and data design: better async/await handling, atomize what should be guaranteed, error handling, vastly improved cache handling.

Some of the work is in separate projects.

  • "Cabinet" is the AWS Lambda + local file processing system.
  • "Inferno" is the server-side web client and internal API for it.
  • "Hare" is the job processing system, which has been in use for a long time now handling websocket messages (not the websockets themselves, but figuring out filtering and rendering data). But I added a whole wing of operations to it for background jobs. Used to just be nofitication-related.

Other pieces that are not being worked on until these big changes are stabilized:

  • "Socks", new websocket system.
  • "Farm", RSS system.
  • "Heylisten", audio file processor, is being integrated into "Cabinet".

Written with html.

Activity: 0 Replies, 0 Reposts, 1 Bookmark

Discussion

View on Beta

@33MHz What'cha working on?
@bayprogrammer a couple things are happening. I'm building an internal API for pnut.io, a server-side web client to consume the API, and refactoring as I build the internal API.
@bayprogrammer but this is spurred on by some major improvements I already made, esp around file handling.
@bayprogrammer codename inferno for the API and client. eventually the internal API will grow to replace the public API, as v2.0.
I've been working on a lot of changes, inspired by some needed changes for File improvements.