BBQ app is study project of events management.
In the app create an event, set mark on the map, add photos, write comments and subscribe to the event so get email notifications about activity on event page.
-
devise - authentication users
-
rails-i18n - app locales
-
carrierwave - upload files
-
rmagick - for images processing
-
fog-aws - provider AWS storage
-
mailjet-gem - email notifications
-
pundit - authorization system
-
rspec-rails - testing framework
-
capistrano - deployment automation tool
-
factory_bot_rails - fixtures replacement
-
omniauth - OAuth
$ rails -v
> Rails 6.1.4.1
$ ruby -v
> ruby 2.7.3
pre-installation required: PostgreSQL, Redis, Node.js, Yarn
Run install gems
$ bundle
Run install nodejs dependent
$ yarn
Create database and run migrations
$ rails db:create db:migrate
Private services keys are in credentials so must generate pair files master.key
and credentials.yml.enc
EDITOR=nano rails credentials:edit
After open credentials file need write this data, enter your values: (this structure is example)
aws:
S3_ACCESS_KEY: <value>
S3_SECRET_KEY: <value>
S3_BUCKET_NAME: <value>
action_mailer:
mailer_host: <value>
mail_from: <value>
user_name: <value>
password: <value>
apikey_public: <value>
apikey_private: <value>
yandex_maps:
apikey: <value>
database:
user: <value>
password: <value>
name: <value>
oauth:
facebook: <value>
app_id: <value>
secret: <value>
vkontakte:
app_id: <value>
secret: <value>
cap:
domain: <value>
user: <value>
Start sever
$ rails s
In browser open localhost:3000
deploy on VPS