CASE STUDY

Onin Sibua Stock Trading App Thumbnail

Stock Trading App

Role:

Sole developer & designer.

Tech Stack:

Ruby, Ruby on Rails, PostgreSQL, Devise, Action Mailer, RSpec, Ransack, Kaminari, RapidAPI, Error Rescue Routing, ERB, HTML, Tailwind CSS, Git, GitHub

Project Overview:

A full-featured stock trading simulation platform built with Ruby on Rails, designed for two user roles: Admins and Traders. Admins can create and manage trader accounts, approve signups, and monitor all transactions. Traders can register, get approved, and buy or sell stocks with real-time data integration. The app replicates realistic trading workflows including account approval, email confirmation, and portfolio management.

Goals:

To build a simulation platform where Admins can create and manage trader accounts and monitor transactions, while Traders can register, get approved, and buy or sell stocks through realistic trading workflows.

Development Process:

Although the project was originally intended to be done in pairs, I requested to complete it solo to challenge myself and take full ownership of the design and implementation. I used Devise for authentication and added an `is_admin` boolean for role distinction. Admins can manage trader records and monitor transactions. Traders go through email confirmation, admin approval, and can manage portfolios and trade stocks. I integrated RapidAPI for real-time stock data. The UI was built with ERB and styled using Tailwind CSS.

Challenges:

Building a dual-role stock trading platform with approval flows, transactional logic, real-time stock data, and a polished UI required handling multiple complex layers. The backend curriculum primarily focused on logic and data modeling, but this project also demanded full product thinking, intuitive user flow design, third-party API integration, and complete front-end polish. Ensuring edge case handling, safe transaction rules, and clarity between admin and trader roles added to the architectural complexity.

Solution:

I applied strong product thinking by focusing on how real users would interact with the app. I designed intuitive flows for both admins and traders, ensuring clarity in approval processes and safety in transactions. I implemented authentication using Devise, added role-based access with an is_admin flag, and integrated RapidAPI to fetch live stock data. I built a portfolio system driven by real transactions and made sure traders could not operate without admin approval. I handled pagination and search with Kaminari and Ransack, styled the UI with Tailwind CSS for a clean responsive experience, and added custom error pages for unmatched routes and rescue routing to improve user experience.

Outcome:

The app fully delivers on the user stories, supporting both admin and trader roles in a professional, responsive interface. It demonstrates full-stack Rails skills with real-world logic, third-party integration, and thoughtful design. Completed in under a week, well ahead of the original deadline.

Contributions:

Designed and built the entire application solo. Implemented authentication, admin approval logic with `is_admin`, transactional systems, RapidAPI integration, and email confirmations. Developed and styled all pages using ERB and Tailwind CSS. Completed the project in under a week, two weeks ahead of schedule.

Learnings:

I deepened my understanding of Devise customization, role-based permissions, transactional modeling, API integration, email confirmation, and RSpec testing. I also sharpened my MVC grasp and product thinking. I designed around real user flows, handled edge cases, and built a solid full-stack Rails app from scratch.

Completed:

July 2025

Stock Trading App