GithubHelp home page GithubHelp logo

nitbravoa92 / budget-app Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 0.0 334 KB

YouPayment is a mobile budget app built with Rails 7 and PostgreSQL. It allows the user to record all their expense transactions and classify them by categories.

Home Page: https://budget-app-v4rw.onrender.com/

License: MIT License

Ruby 73.79% JavaScript 2.26% CSS 0.98% HTML 22.82% Shell 0.15%
devise postgresql ruby-on-rails

budget-app's Introduction

YouPayment | Ruby on Rails capstone project

πŸ“— Table of Contents


YouPayment App

"YouPayment App" YouPayment is a mobile budget app built with Rails 7 and PostgreSQL. It allows the user to record all their expense transactions and classify them by categories. This helps the user to keep effective, private and secure control of all the information on their expenses, and thus be able to make better decisions about money management.

YouPayment is easy to use and navigate. Users can create categories (with a name and icon) and payment transactions in minutes by selecting at least one category and entering a description and amount. The app then automatically categorizes expenses and tracks spending over time.

YouPayment is the perfect budget app for anyone who wants to take control of their finances. It is easy to use and offers a variety of features to help users manage their budget successfully.


πŸ›  Built With

Tech Stack

Backend
Frontend

Key Features

  • Ruby on Rails framework
  • Use Linters to check code quality
    • Rubocop
    • Stylelint
  • MVC architectural/design pattern
  • Data persistent in PostgreSQL
  • Test the application with rspec and capybara gems
  • Authentication system build with devise gem
  • Follow Microverse's list of best practices

(back to top)


πŸš€ Live Demo

To see the application working live, you can click on the following link that contains the demo version:

(back to top)

πŸ”­ Walk through video

Video presentation of the Project

(back to top)

πŸ’» Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

In order to run this project you need:

  • **A code editor** like Visual Studio Code (Recommended) or any other of your preference. It is necessary to open the project and add or modify the source code. [You can Download Visual Studio Code here](https://code.visualstudio.com/)

  • **Git:** to manage the project versions of source code. [You can Download Git here](https://git-scm.com/)

Setup

Clone this repository to your desired folder by using this πŸ‘‡οΈ command :

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

Install

Go to the project directory:

 cd budget-app

Before to run the program, verify that you have Ruby on Rails installed on your OS running the following command:

 rails --version

It should show you the version of ruby on rails ​​installed. If this does not happen and only an error message is displayed, then you should either verify your installation or install Ruby on Rails from scratch.

Download and Install Ruby on Rails

Once you have verified that you have Ruby on Rails installed, run the following command to install the necessary gems:

 bundle install

Then run the following command to install the necessary Node packages:

 npm install

After installing the gems and packages, run the following command to create the database:

 rails db:create

Then run the following command to migrate the database:

 rails db:migrate

Usage

Run the following command inside the project folder to start the application:

 rails s

This will start the application on your local server. You can now open your browser and go to http://localhost:3000/ to see the application running.

Run linters

To verify that the ruby and CSS code is written without errors and meets good practice standards, run the following command inside the project folder:

  • ruby linter:
 rubocop
  • CSS linter:
 stylelint "**/*.{css,scss}"

Run tests

To execute the tests, run the following command inside the project folder:

  bundle exec rspec

(back to top)


πŸ‘₯ Authors

πŸ‘€ Nitcelis Bravo

(back to top)


πŸ”­ Future Features

Upcoming improvements:

  • Add Forms to create a new category and payment
  • Add the functionality to list categories and payments
  • Add the integration tests using capybara gem
  • Create the CSS styles for the app
  • Deploy the application

(back to top)


🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

To do Contributions, please fork this repository, create a new branch and then create a Pull Request from your branch. You can find detailed description of this process in: A Step by Step Guide to Making Your First GitHub Contribution by Brandon Morelli

(back to top)


⭐️ Show your support

If you like this project and know someone who might find it helpful, please share it. Or give it a star ⭐️ if you like this project!

(back to top)


πŸ™ Acknowledgments

The UI design of this webapp is not mine. This design was created and belongs to Gregoire Vella. (Here)[https://www.behance.net/gallery/19759151/Snapscan-iOs-design-and-branding?tracking_source=] you can find more information about the original design of this mobile app and you can also see Gregoire Vella's profile (here)[https://www.behance.net/gregoirevella] to know more details about his wonderful work.

I would also like to thank my Microverse teammates for their support. They have supported me a lot in carrying out this project, giving me suggestions, good advice and solving my code doubts.

(back to top)


πŸ“ License

This project is MIT licensed.

The UI design of the webpage is not mine. It is under (Creative Commons License)[https://creativecommons.org/licenses/by-nc/4.0/] licensed.

(back to top)


budget-app's People

Contributors

nitbravoa92 avatar

Stargazers

HernΓ‘n GΓΌemes avatar Arthur Iturres avatar jist avatar Syeda Masuma Fatima avatar Andrea Manuel avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.