inertia

SKILL.md

Inertia.js for The Boring JavaScript Stack

Inertia.js is the bridge between Sails.js and your frontend framework (React, Vue, or Svelte) in The Boring JavaScript Stack. It lets you build modern single-page apps using classic server-side routing and controllers -- no API required. The inertia-sails package implements the full Inertia.js v2 protocol as a Sails hook.

When to Use

Use this skill when:

  • Rendering pages with Inertia (responseType: 'inertia')
  • Setting page-specific meta tags, titles, and OG images with locals (sails.inertia.local(), return { locals })
  • Handling form submissions and redirects (responseType: 'redirect' vs 'inertiaRedirect')
  • Sharing data globally across all pages (sails.inertia.share(), once(), refreshOnce())
  • Working with flash messages (sails.inertia.flash())
  • Handling validation errors (responseType: 'badRequest', form.errors)
  • Using advanced props: deferred, optional, always, merge, scroll
  • Building frontend components with useForm, usePage, Link, Head, router
  • Setting up createInertiaApp and persistent layouts
  • Handling server errors with the Inertia error modal
  • Working with partial reloads, history encryption, or asset versioning

Rules

Read individual rule files for detailed explanations and code examples:

Framework-Specific APIs

  • rules/react.md - React: useForm, usePage, Link, Head, Deferred, WhenVisible, usePoll, layouts
  • rules/vue.md - Vue: useForm, usePage, Link, Head, Deferred, WhenVisible, usePoll, defineOptions layouts
  • rules/svelte.md - Svelte: useForm (stores), page store, Link, inertia action, svelte:head, layouts
Weekly Installs
15
GitHub Stars
491
First Seen
Feb 12, 2026
Installed on
opencode14
gemini-cli14
github-copilot14
codex14
kimi-cli14
amp14