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)