RAILS BEYOND A BLOG APPLICATION

Building an e-wallet using Ruby on Rails — Part One

Henry "Dru" Onyango
2 min readJul 11, 2018

The internet is filled with a plethora of ruby on rails tutorial. Most of them don’t really go beyond how to build a ruby on rails blog. The beauty of building a ruby on rails blog is that it is really good for beginners to grasp the concepts of MVC (Model View Controller) design architecture, CRUD applications and basic programming concepts such as loops, conditionals and data structures as far as Ruby on Rails is concerned.

However, what they lack is the bit of how to inject logic beyond if statements in Rails. The downside of that is that it becomes difficult to really build anything tangible using Rails framework. And that’s why I decided to do this short series.

Throughout this series ( I can’t really say how many parts are going to be there ), I’ll be going through a step-by-step guide on how to use RoR to build an e-wallet. My intention is to keep the tutorial short and easy to understand. I’ll also share a github repository of the code base just in case someone gets stuck and needs to refer.

So, just a breakdown of some of the concepts I’ll be touching on:

  1. Introduction to ruby on rails: What is ruby on rails framework and why you might still consider it for development? Set up and installation, object oriented programming in ruby and gems in rails
  2. Model View Controller Architecture: What is MVC pattern? What is a model, view and controller? How does rails implement the MVC?
  3. CRUD applications: What is CRUD and how does rails implement or use it
  4. Model design and architecture: How to design a database, primary keys, foreign keys and inheritance
  5. How to create views and controllers in rails
  6. User sign up, registration and authentication using devise gem
  7. Testing in rails: Introduction to Test Driven Development (TDD) in rails and writing tests using RSpec and Capybara
  8. Implement business logic in rails
  9. Using Action Mailers to send emails: new registered users and transaction notifications
  10. Integrating Safaricom M-Pesa API on the wallet
  11. Deploying final application on Heroku

The whole goal of these series is to get you familar with as many rails concepts as possible while going beyond the normal blogging tutorials.

Although I intend for this tutorial to be as simple as possible, prior knowledge in HTML, CSS and Javascript will make understanding easier.

Next up we will do a simple user story and come up with functionalities the application is supposed to have. In case there’s something you’d want to learn in rails that I haven’t mentioned up there, leave a comment below and I’ll add it on.

See you on the next post 💚 💚

--

--

Henry "Dru" Onyango
Henry "Dru" Onyango

Written by Henry "Dru" Onyango

Building products somewhere in Africa. Sometimes I write.

Responses (3)