Quick start
bin/rails app:template LOCATION=https://www.rubyschema.org/rails.rb
Adds a schema comment to each supported config file in your Rails app. Safe to re-run when new schemas are added. View the template.
Manual setup
YAML
# yaml-language-server: $schema=<url>
%YAML 1.1
---
%YAML 1.1 tells the language server to read the
file the way Ruby does, since Psych implements YAML 1.1.
JSON
{ "$schema": "<url>" }
TOML
#:schema <url>
Works with the YAML language server and any JSON Schema-aware editor, including VS Code, Neovim and Zed.
Schemas
| Name | File | Schema |
|---|---|---|
| Rails | ||
| Database | config/ |
/rails/database.json |
| Storage | config/ |
/rails/storage.json |
| Cable | config/ |
/rails/cable.json |
| Cache | config/ |
/rails/cache.json |
| Queue | config/ |
/rails/queue.json |
| Recurring | config/ |
/rails/recurring.json |
| Deployment & CI | ||
| Kamal | config/ |
/kamal/deploy.json |
| Lefthook | lefthook.ymllefthook.jsonlefthook.toml |
/lefthook.json |
| Code Quality | ||
| Brakeman | config/ |
/brakeman.json |
| ERB Lint | .erb_lint.yml.erb-lint.yml |
/erb_lint.json |
| RuboCop | .rubocop.yml.rubocop_todo.yml |
/rubocop.json |
| Standard | .standard.yml |
/standard.json |
| Packwerk | package.yml |
/packwerk/package.json |
| Background Jobs | ||
| Sidekiq | config/ |
/sidekiq.json |
| Shoryuken | shoryuken.yml |
/shoryuken.json |
| Monitoring | ||
| Honeybadger | config/.honeybadger.yml |
/honeybadger.json |
| RoRvsWild | config/ |
/rorvswild.json |
| Scout APM | config/ |
/scout_apm.json |
| PgHero | config/ |
/pghero.json |
| I18n | ||
| Locale files | config/ |
/i18n/locale.json |
| i18n-tasks | config/ |
/i18n-tasks.json |
| Other | ||
| Blazer | config/ |
/blazer.json |
| Mongoid | config/ |
/mongoid.json |
| Vite Ruby | config/ |
/vite.json |