Skip to content

The Budget App - Budgetti, built with Ruby on Rails and PostgreSQL, is a user-friendly tool for personal finance management. It allows users to categorize transactions, track spending, and gain insights into their financial habits, promoting responsible budgeting. It's more than an app; it's a simplified and organized approach to personal finance.

License

Notifications You must be signed in to change notification settings

fmanimashaun/budget-app

Repository files navigation

Budget App - Budgetti

📗 Table of Contents

📖 Budget App - Budgetti

The Budget App - Budgetti is a comprehensive solution for managing personal finances, designed using Ruby on Rails with a PostgreSQL database. This fully functional application allows users to create categories, track transactions, and get an overview of their spending. An important feature of the app is its ability to associate transactions with categories, enabling users to understand their spending habits better. This promotes responsible financial management, which is a vital part of personal finance. The Budget App is not just an application, but a financial companion that enhances the budgeting experience by organizing and simplifying the process

🛠 Built With

Programming Language
  • Ruby 3.2.2
Web Application Framework
  • Rails 7.1.2
Database
  • PostgreSQL (pg gem)
Web Server
  • Puma
JavaScript Modules
  • ESM Import Maps (importmap-rails gem)
UI Styling
  • Tailwind CSS (tailwindcss-rails gem)
Hotwire
  • Turbo (turbo-rails gem)
  • Stimulus (stimulus-rails gem)
APIs
  • Jbuilder
Performance Optimization
  • Bootsnap
Testing
  • Debug
  • Factory Bot (factory_bot_rails gem)
  • RSpec (rspec-rails gem)
  • Capybara
  • Selenium Webdriver
Code Quality
  • Rubocop
Development Tools
  • Web Console (web-console gem)
Pagination
  • Kaminari
Authentication
  • Devise (devise gem)
Authorization
  • CanCanCan (cancancan gem)

Key Feature

  • User Authentication: Users can securely register and log in to the app using their email and password.
  • Category Management: Users can create and manage categories, each with a unique name and icon.
  • Transaction Tracking: Users can add transactions under each category, with details like name and amount.
  • Budget Overview: On the home page, users can see an overview of all categories along with the total amount of transactions under each category.
  • Detailed Transaction View: Users can view all transactions under a specific category, sorted by the most recent.
  • Easy Navigation: Users can easily navigate between different pages like home, transactions, add new category, and add new transaction.
  • Test Coverage: The app includes unit and integration tests to ensure it works as expected.
  • Deployment: The app is deployed and accessible online for users to use it anywhere, anytime.

👆

Screenshots

public index without login

LIVE DEMO

LIVE Link Video demo

👆

💻 Getting Started

To get started with the project, follow the steps below.

Prerequisites

To run this project, ensure you have the following installed:

Setup

Clone the repository to your local machine:

git clone https://github.com/fmanimashaun/budget-app.git

cd budget-app

bundle install

npm install

Database Setup

This application uses PostgreSQL as the database. Here are the steps to set it up:

  1. Ensure PostgreSQL is installed on your machine and running.

  2. Update the config/database.yml file with your PostgreSQL username and password in the default section.

  3. Create the database:

rails db:create
  1. Run migrations to set up the database schema:
rails db:migrate

Usage

To run the program, you can use a Ruby interpreter. For example, to interact with the code, use the following:

  1. Start the server
bin/dev
  1. Access the Blog app in your web browser at http://localhost:3000.

👆

👥 Authors

👤 Fisayo Michael Animashaun

👆

🔭 Future Features

  • Responsive Design: The app will designed to be responsive and works well on various devices and screen sizes.
  • Customizable Interface: Users will be able to customize the interface with their preferred color scheme and font

👆

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

Issue Page

👆

⭐️ Show your support

If you like this project leave a start for it.

👆

🙏 Acknowledgments

  • I'd like to thank Microverse for helping us in the journey to become a Fullstack developer.

  • Special appreciation Gregoire Vella on Behance for the Original design idea

👆

📝 License

This project is MIT licensed.

👆

About

The Budget App - Budgetti, built with Ruby on Rails and PostgreSQL, is a user-friendly tool for personal finance management. It allows users to categorize transactions, track spending, and gain insights into their financial habits, promoting responsible budgeting. It's more than an app; it's a simplified and organized approach to personal finance.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published