Training#

This writeup is a summary of what gems / components need to be installed in a solid rails app. I've collected info from the following sites: * Let's Build for Ruby and Rails developers. * GoRails - my Dashboard * learnEnough Rails

Development#

The code repos is here

Core Gems#

Devise (auth) Sidekiq (background job queuing service) Whenever (Cron jobs for the win) Stripe (Charge with Stripe) Stripe Event (listen for Stripe events) Pay (payments with Stripe and Braintree) Pagy (fast pagination) aws-sdk-s3 (active storage) image_processing (active storage) inline_svg (rendering svgs from file) Honeybadger - (error tracker) Redis (for all the redis things) pg (PostGreSQL) OmniAuth - Google/Twitter (Login with Google and Twitter with Devise-omniauth) sendgrid-ruby (hook up email sending service) name_of_person cool gem for working with names FriendlyId (make slugs more human)

Development Gems#

  • annotate (adds comments to models for reminders about the database design)
  • faker (generate fake data for tests or seeds)
  • pry-rails (useful for debugging)

Development side-tracks#

I'll also be leveraging an application template I made called kickoff_tailwind which is a huge time saver when it comes to creating and configuring a new Ruby on Rails application.

If you're following along I recommend cloning the template and using it along the journey. Bundled with it is Tailwind CSS and a few gems I swear by including Devise, Sidekiq, FriendlyId, and name_of_person.

I'll continue installing a few gems I like to leverage during development including Faker, Annotate, inline_svg, and Pay. We'll need Stripe, Stripe Event, and a handful of other gems as well.