Hello. Why was the rum repository archived on Mar 28, 2025? Has it been moved somewhere else?
Yes, to be clear: I am very grateful to @tonsky for Rum and the continued maintenance over the years (also for some other libraries, I am a big fan of compact-uuids and looking at clojure-plus). Thank you for all that work! I do not take it for granted and I appreciate the effort very much.
I thought @roman01la was maintaining it? If it is indeed being abandoned, it's a disaster for me, as I have a large application based on Rum. I wish I could migrate to something different, but apart from the HUGE amount of work this would require (my app currently has 460 rum/def* invocations, and some of those are very complex, like a full form system), it seems some alternatives won't work, because I sometimes need to generate hiccup data structures on the fly for dynamic forms.
BTW, just to clarify, this is a commercial app, and I do not expect things for free, I am open to paying for maintenance, or for getting something else extended so that I could migrate to it. I just don't know what the solution is.
No, Roman moved on to uix. @jrychter I don't want to leave you abandoned, let me know when you need something fixed and maybe we can arrange that for a fee. I mostly don’t want new users to jump on ship and expect e.g. modern React features
So I’ll maintain it. Do you think I should unarchive repo too?
From my point of view, whether it's archived or not doesn't really make any difference. I used to worry about Rum not becoming more popular (I'm not quite sure why Reagent became more popular), but that ship has sailed. There are no issues with rum today for me. Everything works as it should. I'm just worried about the future. I would be very open to talking about a contract for either modernizing Rum for use with modern React (no need for new features, this is just to prevent obsolescence), or to extending UIx so that it allows dynamically-constructed content and advising me on how to port the application.
I do not really support it anymore, and don’t have plans to upgrade it e.g. to latest react. And since react ecosystem kinda moved forward a lot, I figured you better use smth that is up to speed with modern React. Why? Do you think I should not archive it?
I’m not really sure how to handle this, this is the first project I actually retire :)
I'm in the same boat as @jrychter. Commercial app with big investment in rum. (FWIW, we just upgraded to react 19.1.0 and current rum works fine for us.)
I would vote to un-archive. I'd even be happy to pitch in to do some maintaining. I can't make any big time commitments, but I'm already fairly familiar with the rum codebase just from using it so extensively.
@jrychter I am happy to help/merge such PR if anyone is willing to work on it, but I don’t really want to return to web dev, so it’s unlikely I’ll do it myself
Thanks. So, if anybody is willing, please contact me directly and we'll talk.
Since rum is a really small library, wouldn't it be possible to have the same api of rum but uÄş nder the hood using uix with hooks?
> apart from the HUGE amount of work this would require (my app currently has 460 rum/def* invocations, At https://github.com/logseq/logseq we have even more components so it will also be painful to migrate and unlikely to happen soon > I am happy to help/merge such PR if anyone is willing to work on it, but I don’t really want to return to web dev, so it’s unlikely I’ll do it myself @tonsky We started a fork, https://github.com/logseq/rum/commits/fork/, that updates some of Rum to v18 but I think it’s only covers part of the rum API. If it’s good enough as is, happy to provide a PR > I’m not really sure how to handle this, this is the first project I actually retire :) I’d suggest adding a one or two line sentence explaining what you’ve shared here e.g. the status (archived but open to maintainers) and reason for archiving . I was a bit confused to see it archived without a description. Thanks for all the open source work you have shared with all of us!
I unarchived it and put a note in the Readme instead