Repository

1app5stacks

I built the same app in 5 stacks*. Those stacks are: Ruby on Rails: https://roundest-rails.fly.dev/ Elixir + Phoenix: https://roundest-phoenix.fly.dev/ Go + GraphQL + React SPA: ht · License unknown · Maintenance unknown

License
Unknown
Stack
Primary Language LOC
Ruby on Rails
509 lines (Ruby)
Elixir + Phoenix*
991 lines (Elixir)

Specs

  • StackPrimary Language LOC
  • Ruby on Rails509 lines (Ruby)
  • Elixir + Phoenix*991 lines (Elixir)
  • Elixir + Phoenix* (without turbo)832 lines (Elixir)
  • Go + gql + React440 lines (TypeScript) + 423 lines (Go)
  • OG T3 Stack443 lines (TypeScript)
  • RSC version427 lines (TypeScript)
  • RSC version (without turbo)334 lines (TypeScript)

README

1 App, 5 Stacks

I built the same app in 5 stacks*. Those stacks are:

  • Ruby on Rails: https://roundest-rails.fly.dev/
  • Elixir + Phoenix: https://roundest-phoenix.fly.dev/
  • Go + GraphQL + React SPA: https://roundest-go.vercel.app/
  • OG T3 Stack (Next.js/Pages + Prisma): https://roundest-t3.vercel.app/
  • Next.js RSCs + App Router: https://roundest-rsc.vercel.app/

* Ben wrote all of the Go code and most of the Elixir version

Line of Code comparison

Don't read too much into this, I just found it interesting.

Note: Both the Elixir and RSC versions have a "turbo" route with a lot of duplicated code, so I included a 2nd count for those with the turbo routes removed.

Stack Primary Language LOC Total LOC
Ruby on Rails 509 lines (Ruby) 1,014 lines
Elixir + Phoenix* 991 lines (Elixir) 1,395 lines
Elixir + Phoenix* (without turbo) 832 lines (Elixir) 1,236 lines
Go + gql + React 440 lines (TypeScript) + 423 lines (Go) 940 lines
OG T3 Stack 443 lines (TypeScript) 585 lines
RSC version 427 lines (TypeScript) 453 lines
RSC version (without turbo) 334 lines (TypeScript) 360 lines

* I deleted ~1,000 lines from the Phoenix template (and still had this much code left)