Build Blog with Ruby on Rails

Guide you step by step learning Ruby on Rails through building a Blog application.
Luan Nguyen
Luan Nguyen
Aug 09, 2020 · 2 min read

What’ll you learn after complete this project?

  • How to start a new Rails application?
  • Understanding MVC Architecture
  • Model: Active Record migration, validation, association, and query interface.
  • View: Layout, Partial and Form helpers
  • Controller: Actions, Strong Parameters
  • Rails Routing
  • Using Bootstrap in Rails application
  • Active Storage component to upload Files, Images
  • Install Text Editor (WYSIWYG Editor) with Action Text component
  • Using useful Gems as:
    • Devise gem to Authentication
    • FriendlyId  gem to make URL pretty.
    • Kaminari gem for Pagination
  • Deploy Rails application to Production

Tech Stacks

  • Ruby 2.6.3
  • Rails
  • Database: Postgres 9.6
  • HTML, CSS, Javascript, jQuery
  • Bootstrap 4.x

Table of Contents

  • Introduction about Ruby on Rails
  • Understanding MVC Architecture in Rails
  • Request-Response Cycle in Rails application
  • Create a new Rails application
  • Create new Rails Controller through add Homepage to application
  • Installing PostgreSQL in Ruby on Rails application
  • Introduction to Active Record
  • Understanding CRUD in Active Record
  • Creating CRUD Post for Blog
  • What is Bootstrap?
  • Introduction about Asset Pipeline and Webpack
  • Integrate Bootstrap in Rails through Webpack
  • Using Bootstrap to make up UI for Blog
  • Introduction Active Storage component
  • Setup Active Storage with Amazon S3
  • Upload a cover Photo for Post by using Active Storage
  • Introduction about Action Text component
  • Using Action Text to handle rich text content of Post
  • Introducation about Devise gem
  • Create new User account - Login - Logout functions by using Devise gem
  • Authentication for CRUD Post.
  • Introduction to FriendlyId and Kaminari gem
  • How to use FriendlyId to make URL pretty and improve SEO
  • Using Kaminari gem to paginate Posts