Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 2.35 KB

File metadata and controls

66 lines (47 loc) · 2.35 KB

Inertia Rails React Starter Kit

A modern full-stack starter application with Rails backend and React frontend using Inertia.js based on the Laravel Starter Kit.

Features

See also:

Built by Evil Martians

Setup

  1. Clone this repository
  2. Setup dependencies & run the server:
    bin/setup
  3. Open http://localhost:3000

Enabling SSR

This starter kit ships SSR-ready but turned off. The Puma plugin (plugin :inertia_ssr) manages the Node.js renderer in-process — no separate accessory required.

To turn SSR on, flip two switches:

  1. Set config.ssr_enabled = true in config/initializers/inertia_rails.rb.

  2. Build the image with SSR_ENABLED=true so the SSR bundle ships alongside the app. Two ways:

    With Kamal — add to config/deploy.yml:

    builder:
      args:
        SSR_ENABLED: true

    By hand — pass the build arg directly:

    docker build --build-arg SSR_ENABLED=true -t react_starter_kit .

That's it. Puma boots the SSR process automatically when ssr_enabled is true, and Inertia falls back to client-side rendering if it ever fails (see config.on_ssr_error).

In development, flipping ssr_enabled is enough — Vite serves SSR via its own dev endpoint with HMR. The Docker build arg only matters for production images.

License

The project is available as open source under the terms of the MIT License.