Skip to content
STACK IT FIRST
Install the skills
03 · Backend · Scale · Internal

Rails + Postgres + Redis

The most convention-heavy full-stack framework there is, which at scale is exactly what keeps many teams' internal tools consistent.
Agent fit5/5 Scale · Run it for many Reviewed

The stack

Framework
Ruby on Rails 8.1 with Hotwire
Runtime
Ruby in containers
Data
Postgres, Redis for Sidekiq and cache
Auth
SSO through OmniAuth, roles in the database
Hosting
Kamal on your own hosts, or a container platform
Also
  • Sidekiq for jobs and schedules
  • Administrate or a home-grown admin per domain
  • RSpec with a real database
AGENTS.md + real projects on STACK IT FAST (opens in a new tab)

Why agents do well here

5/5
  • Rails conventions are the strongest in the industry; agent-generated models, controllers and migrations follow them almost without prompting.
  • Hotwire keeps screens server-rendered, so an internal tool with hundreds of screens has no client build for the agent to fight.
  • The framework's opinion about where everything goes is what keeps a large internal platform consistent across teams.

Avoid at this tier

  • A JavaScript frontend for internal screens; Hotwire covers it.
  • Service objects for everything; models and jobs are enough until they are not.
  • Multiple Rails apps; use engines or namespaces in one.

How it fits together

Internal platforms at scale have hundreds of screens, many owners, and constant change. Rails’s conventions are the tool that keeps that consistent, and Hotwire keeps it all server-rendered.

Folder layout

app/
  models/         one file per table, validations and scopes
  controllers/    namespaced per domain
  jobs/           Sidekiq jobs and schedules
  views/          Hotwire; Turbo frames for the interactive parts
db/               schema.rb, migrate/
spec/             RSpec with a real database

First five decisions

Lock these in before the agent writes the second feature. Each one removes a choice it would otherwise make differently every time.

  1. 01 Rails conventions unmodified, Sidekiq the one deliberate swap
  2. 02 Hotwire over a SPA
  3. 03 Sidekiq for every job
  4. 04 SSO with database roles
  5. 05 RSpec on models and requests

When to move on

This is the top tier. From here the work is keeping the boundaries explicit, not changing the stack. The Backend Scale page lists what stays the same.

Same tier, other profiles