Чи ви досвідчений розробник Rails, чи тільки починаєте, вибір правильних gems може зробити величезну різницю. Gems — це потужні бібліотеки, які додають важливі функції до додатків Rails без потреби писати їх з нуля. Ось список обов'язкових gems на 2024 рік, які допоможуть оптимізувати процес розробки Rails.
Аутентифікація та авторизація
- Devise — Аутентифікація
Devise GitHub - Pundit — Авторизація
Pundit GitHub - Cancancan — Авторизація
Cancancan GitHub - OmniAuth — Аутентифікація через кілька постачальників
OmniAuth GitHub
Обробка фонових завдань
- Sidekiq — Обробка фонових завдань
Sidekiq GitHub - Delayed Job — Обробка фонових завдань
Delayed Job GitHub - Resque — Фонові завдання з Redis
Resque GitHub - GoodJob — Фонові завдання з підтримкою Postgres
GoodJob GitHub
Завантаження файлів
- CarrierWave — Завантаження файлів
CarrierWave GitHub - Active Storage — Завантаження файлів (вбудовано в Rails)
Active Storage GitHub - Shrine — Інструменти для завантаження файлів
Shrine GitHub
Розробка API
- Grape — REST-подібний фреймворк для API
Grape GitHub - Jbuilder — JSON відповіді
Jbuilder GitHub - Active Model Serializers — JSON серіалізація
Active Model Serializers GitHub - Rswag — Документація Swagger
Rswag GitHub
Тестування та відлагодження
- RSpec — Фреймворк для тестування
RSpec GitHub - Factory Bot — Генератор тестових даних
Factory Bot GitHub - Capybara — Інтеграційне тестування
Capybara GitHub - VCR — Запис взаємодій для тестування
VCR GitHub - Bullet — Виявлення проблем з N+1 запитами
Bullet GitHub
Оптимізація продуктивності
- Rack::Attack — Лімітування запитів
Rack::Attack GitHub - Dalli — Високопродуктивне кешування
Dalli GitHub - Oj — Парсинг JSON
Oj GitHub - Skylight — Моніторинг продуктивності
Skylight GitHub
Безпека
- Brakeman — Скандер безпеки
Brakeman GitHub - Rack-cors — CORS Middleware
Rack-cors GitHub - Secure Headers — HTTP заголовки безпеки
Secure Headers GitHub
Покращення фронтенду
- Hotwire — Інтерактивні інтерфейси користувача
Hotwire GitHub - Simple Form — Користувацькі форми-методи
Simple Form GitHub - Bootstrap — UI фреймворк
Bootstrap GitHub - Tailwind CSS — CSS фреймворк з утилітарним підходом
Tailwind CSS GitHub - React-Rails — Інтеграція React з Rails
React-Rails GitHub
Управління базами даних та запити
- Active Record Import — Масове вставлення
Active Record Import GitHub
2.
PgSearch — Повнотекстовий пошук для Postgres
PgSearch GitHub - PaperTrail — Версіонування
PaperTrail GitHub - AASM — Машини станів
AASM GitHub
Локалізація та інтернаціоналізація
- I18n — Інтернаціоналізація
I18n GitHub - Rails-i18n — Локалізаційні дані
Rails-i18n GitHub
Платежі
- Stripe — Обробка платежів
Stripe GitHub - Pay — Платежі за підпискою
Pay GitHub
Електронна пошта та сповіщення
- Letter Opener — Попередній перегляд електронної пошти в процесі розробки
Letter Opener GitHub - Mailcatcher — Тестовий SMTP сервер для електронної пошти
Mailcatcher GitHub - Noticed — Система сповіщень
Noticed GitHub
Обробка даних
- Ransack — Фільтри пошуку
Ransack GitHub - Kaminari — Пагінація
Kaminari GitHub - Pagy — Пагінація
Pagy GitHub
Адміністративні інтерфейси
- ActiveAdmin — Адміністративна панель
ActiveAdmin GitHub - Avo — Безкодовий адміністративний інтерфейс
Avo GitHub - RailsAdmin — Адміністративна панель
RailsAdmin GitHub
Аналітика
- Ahoy — Відстеження відвідувань та подій
Ahoy GitHub
Перекладено з: Top Ruby on Rails Gems to Must Use in 2024