Спасибо большое за посещение моего репозитория, сейчас я расскажу вам, как пользоваться моим приложением, которое помогает собраться с друзьями или коллегами на какое-либо событие.
Новая ссылка: https://bbq-for-friends.herokuapp.com
На моем проекте существует стандартная регистрация, а так же регистрация и вход через соц. сети (vk, fb)
Пользователь может создавать событие, удалять и редактировать. Так же пользователь может ставить пин-код на событие. При подписке на событие создатель получает увидомления на почту, которую он указал. Если же пользователь оставляет комментарий, добавляет фото, то рассылка почты об обновлении в собитии идет всем, кто подписан на событие.
Приложение сейчас развернуто на VPS, буду рад, если вы его посетите. Но все же поговорим о приложении:
- Развернуто на VPS DigitalOcean (Ubuntu 20.04 + nginx + Phusion Passenger) через gem Capistrano
- База данных PostgreSQL для локального хранения данных
- Хранилище пользовательских данных и фотографий, организованное на Amazon S3 AWS c помощью carrierwave и rmagic gems
- Служба Mailjet для отправки электронной почты в фоновых заданиях с использованием Resque + Redis
- Авторизация в приложении через gem pundit
- OAuth2 - стандартная авторизация через аккаунты в социальных сетях Facebook и ВКонтакте
- Локализовано с помощью I18n
- Стили оформлены через bootstrap
- Фотогалерея, организованна через lightbox
Для того чтобы попробовать приложение у себя на локальной машине, вам нужно:
- Склонировать моё приложение к себе на комьютер. (
git clone git@github.com:lunst97/bbq.git
) - Сделать
bundle
всех гемов (перед тем как делать, нужно перейти в папку приложения) - Далее вам нужно прогнать все миграции командой:
rails db:migrate
- Чтобы приложение работало, вам нужно создать файлы
database.yml
иsecrets.yml
-
В файле
database.yml
нужно прописать следующий код:default: &default adapter: sqlite3 encoding: unicode pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: «: *default database: `name` test: «: *default database: `name` production: adapter: postgresql user: `user vps` password: `password database` database: `name` host: localhost port: `port`
-
В файле
secrets.yml
нужно прописать следующий код:development: x omniauth_facebook_id: x omniauth_facebook_secret: x omniauth_vkontakte_key: x omniauth_vkontakte_secret: x production: secret_key_base: x omniauth_facebook_id: x omniauth_facebook_secret: x omniauth_vkontakte_key: x omniauth_vkontakte_secret: x
- Далее нужно в корневой папке bbq создать файл
.env
MAILJET_API_KEY = ''
MAILJET_SECRET_KEY = ''
MAILJET_SENDER = ''
YANDEX_API = ''
S3_ACCESS_KEY = ''
S3_SECRET_KEY = ''
S3_BUCKET_NAME = ''
- Теперь осталось просто написать команду:
rails s
\ - И запустить
bin/webpack-dev-server
webpack сервер.
Rails
- 6.1.3.1
Ruby
- 2.7.2