
I shipped a collaborative app with Rails 8. Zero JavaScript frameworks
I shipped a collaborative todo app where anyone with a link can view or edit a shared list, no account required. Rails 8 , no React, no SPA, no Node build step. Wanted to share two patterns that took real effort to get right. The app: Simple Todo - create a list, get a link, share it. The other person opens it and starts working. No signup, no install. The guest lists are deleted after 30 days if not reclaimed from an account. Stack: Rails 8.1 / Ruby 3.4, Hotwire (Turbo + Stimulus), Tailwind via importmaps, PostgreSQL 17 + Redis, Solid Queue, Devise + AASM, Stripe, Kamal 2 on a Hetzner VPS. Under $10/mo all-in. Pattern 1: Guest-to-user ownership transfer This is where I burned a lot time to tune it. Guests get a session-based identity (UUID v7 primary keys, 30-day persistence). They can create lists, share them, use the app fully. When they decide to register, all their lists need to transfer to their new account atomically, with an audit trail. I ended up with an AASM state machine on
Continue reading on Dev.to Webdev
Opens in a new tab




