---
## Your controllers. Your routes. Modern components.
Inertia lets you build a fully client-side rendered single-page app without the
complexity of a separate API. Pass data from Rails directly to React, Vue, or
Svelte as **props** — no REST endpoints, no GraphQL, no client-side data
fetching, no state-management headaches.
```ruby
# app/controllers/users_controller.rb
class UsersController < ApplicationController
def index
render inertia: {
users: User.active.map { |user| user.as_json(only: [:id, :name, :email]) }
}
end
end
```
```jsx
// app/frontend/pages/users/index.jsx
import { Link } from '@inertiajs/react'
const Users = ({ users }) => (
<>
{users.map((user) => (