Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kidd254/budget_app
https://github.com/kidd254/budget_app
bootstrap5 css html ruby ruby-on-rails server-side-rendering
Last synced: 27 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/kidd254/budget_app
- Owner: Kidd254
- License: mit
- Created: 2023-10-22T13:30:15.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-06-29T12:16:02.000Z (5 months ago)
- Last Synced: 2024-06-29T13:32:39.788Z (5 months ago)
- Topics: bootstrap5, css, html, ruby, ruby-on-rails, server-side-rendering
- Language: Ruby
- Homepage:
- Size: 573 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
| MoneyMate App
# π Table of Contents
- [π Table of Contents](#-table-of-contents)
- [MoneyMate App ](#MoneyMate-app-)
- [π Built With ](#-built-with-)
- [Tech Stack ](#tech-stack-)
- [Key Features ](#key-features-)
- [π Live Demo ](#-live-demo-)
- [π Walk through video ](#-walk-through-video-)
- [π» Getting Started ](#-getting-started-)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Usage](#usage)
- [Run linters](#run-linters)
- [Run tests](#run-tests)
- [π₯ Authors ](#-authors-)
- [π Future Features ](#-future-features-)
- [π€ Contributing ](#-contributing-)
- [βοΈ Show your support ](#οΈ-show-your-support-)
- [π Acknowledgments ](#-acknowledgments-)
- [π License ](#-license-)---
**"MoneyMate App"** MoneyMate 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.
**MoneyMate** 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.
**MoneyMate** 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.
---
Backend
Frontend
- 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
---
To see the application working live, you can click on the following link that contains the demo version:
- [Money Mate App - Live Demo]()
Video presentation of the Project
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/)
**Nodejs and NPM:** to install and manage the node packages. [Nodejs and NPM installation guide](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
### Setup
Clone this repository to your desired folder by using this ποΈ command :
```
git clone https://github.com/Kidd254/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](https://guides.rubyonrails.org/getting_started.html)
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
```
---
π€ **Lawrence Muema Kioko**
- GitHub: [@githubhandle](https://github.com/Kidd254)
- Twitter: [@twitterhandle](https://twitter.com/lawrenc98789206)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/lawrence-muema-kioko)
---
Upcoming improvements:
- [x] Add Forms to create a new category and payment
- [x] Add the functionality to list categories and payments
- [x] Add the integration tests using capybara gem
- [x] Create the CSS styles for the app
- [x] Deploy the application
---
Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](https://github.com/NitBravoA92/budget-app/issues).
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](https://codeburst.io/a-step-by-step-guide-to-making-your-first-github-contribution-5302260a2940)
---
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!
---
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.
---
This project is [MIT](./LICENSE) 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.
---