Skip to content

brandaoplaster/ledgerPro

Repository files navigation

ledgerPro

A full-stack Ruby on Rails application to manage an investment wallet for stocks, REITs (FIIs), and cryptocurrencies.

The project uses Hotwire and Stimulus for a reactive UI and follows SOLID principles and Clean Code practices.

What is this project?

ledgerPro is a portfolio manager where users can:

  • Create an investment wallet
  • Add assets (stocks, FIIs, crypto)
  • Track current positions
  • Register buy and sell operations
  • Visualize data in real time using Hotwire

The goal is to provide a clean, maintainable codebase while delivering a modern full-stack Rails experience.

Tech Stack

  • Ruby 3.4.5
  • Rails 8.1.1
  • Hotwire (Turbo + Stimulus)
  • Importmaps (no Node.js)
  • PostgreSQL
  • Docker & Docker Compose (development)

Code Quality

This project is built with:

  • SOLID principles
  • Clean Code practices
  • Service objects and POROs where needed
  • Small, focused classes and methods
  • High test coverage

Requirements

You only need:

  • Docker
  • Docker Compose

No local Ruby, Rails, Node, or database required.

Getting Started

Clone the repository:

git clone https://github.com/brandaoplaster/ledgerPro.git
cd ledgerPro

Build and start containers:

docker compose up --build

Setup the database:

docker compose run ledger bundle exec rails db:create db:migrate

Open in browser:

http://localhost:3000

Useful Commands

Rails console:

docker compose run ledger bundle exec rails c

Run tests:

docker compose run ledger bundle exec rails test

Stop containers:

docker compose down

Project Structure

.
├── app/
│   ├── controllers/
│   ├── models/
│   ├── services/
│   ├── views/
│   └── javascript/ (Stimulus)
├── config/
├── db/
├── Dockerfile
├── compose.yml
└── README.md

License

About

LedgerPro is an investment portfolio management system. It allows users to manage their portfolios by choosing how many assets to include or reject. The system helps organize investments, control asset allocation, and support better investment decisions in a simple and clear way.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors