Этот проект представляет собой приложение на Rails 7, использующее importmaps и bootstrap 5, предназначенное для работы с шаблонами документов. Основные функции включают аутентификацию, авторизацию, управление ролями, локализацию и REST API для сервисов работы.
- Ruby 3.3.4
- Rails 7
- PostgreSQL 10+
- Bootstrap 5
- Rspec для тестирования
- ActiveStorage для управления файлами
- Sidekiq для фоновых заданий
- Devise для аутентификации
- Cancancan для авторизации
- Doorkeeper для OAuth авторизации
- Pghero для профилирования
- Strong_migrations для безопасных миграций
-
Убедитесь, что у вас установлены Ruby 3.3.4 и bundler:
rbenv install 3.3.4 gem install bundler
-
Создайте gemset и переключитесь на него:
rbenv gemset create 3.3.4 document_template_app rbenv gemset use 3.3.4@document_template_app
-
Клонируйте репозиторий:
git clone <URL вашего репозитория> cd <имя вашего проекта>
-
Установите зависимости:
bundle install
-
Настройте базу данных:
rails db:setup
-
Запустите сервер:
rails server
Приложение поддерживает три языка: английский (en), русский (ru) и казахский (kz). Файлы локализации находятся в директории config/locales
.
Для управления админской частью приложения используйте стандартный путь /admin
. Доступ предоставляется только пользователям с соответствующей ролью.
Sidekiq используется для выполнения фоновых задач. Панель управления Sidekiq доступна по пути /sidekiq
.
Для профилирования запросов к базе данных используется PgHero. Панель управления PgHero доступна по пути /pghero
.
Для тестирования используется Rspec. Запустить тесты можно командой:
bundle exec rspec