Ruby On Rails - Application Setup Guide

This setup will cover a pure, monolithic Rails Applications. This is the most frequent type of application we have at Renuo and is probably also the easiest to setup. The application (and relative GitHub repo) will be named after the [project-name] you chose before.

Have you chosen a [project-name] yet? If not, please do so now. Check our Naming Conventions

  1. Initialise the Rails Application
  2. Push to Git Repository
  3. Initialise Gitflow
  4. Configure Git Repository
  5. Create an Application Server
  6. Configure the CI / CD

Once here, your app should be up and running on all three environments.

It's now time to introduce some more tools which will help you and the team to keep a high quality during the project development.

  1. RSpec
  2. Linting and automatic checks
  3. Gems and libraries 💎
  4. Cloudflare
  5. README

🎉 Finally you are ready to start working on you new project! 🎉

While everyone starts working there are some more things which you should setup. Most are not optional, but the rest of the team can start working even if those are not in place yet.

  1. AppSignal
  2. Sentry (optional)
  3. NewRelic (optional)
  4. robots.txt
  5. Percy (optional)
  6. Protect develop environment

Some services should be configured accordingly to the packages bought by the customer. Once the new application is created, please add the project to the monitoring list and discuss with the PO how the service should be configured.

  1. Uptimerobot
  2. Depending on the monitoring list, also Sentry notifications need to be configured.
  3. Depfu security monitoring
  4. Depending on the monitoring list, also Papertrail alerts need to be configured.

Here you will find a series of chapters and guides on how to setup some of the gems we use most often and some other useful services:

  1. Run Javascript tests with Jest
  2. Pull Requests Template
  3. Slack and Project Notifications
  4. Send emails
  5. Sparkpost & Mailtrap
  6. Devise
  7. Sidekiq
  8. Cucumber
  9. Amazon S3 and Cloudfront
  10. Carrierwave Upload
  11. awesome_print gem 'awesome_print'
  12. bootstrap
  13. font-awesome
  14. bullet gem 'bullet'
  15. lograge gem 'lograge'
  16. Rack Tracker (Google Analytics) gem 'rack-tracker' --> see Google Analytics
  17. Typescript
  18. Favicons
  19. Rack CORS
  20. Rack Attack
  21. 🔥 Hotjar
  22. SEO
    • redirect non-www to www
    • Header tags
  23. wicked pdf gem wicked_pdf
  24. Recaptcha v3
  25. Wallee Payment Integration