https://github.com/yusufyusie/budget_application
The "SpendSmart" app keeps track of all your expences. You can create, edit, delete categories and transactions. Each transaction is associeated with 1 or many categories. Built with RoR.
https://github.com/yusufyusie/budget_application
bootstrap5 devise postgresql ruby ruby-on-rails
Last synced: 3 months ago
JSON representation
The "SpendSmart" app keeps track of all your expences. You can create, edit, delete categories and transactions. Each transaction is associeated with 1 or many categories. Built with RoR.
- Host: GitHub
- URL: https://github.com/yusufyusie/budget_application
- Owner: yusufyusie
- License: mit
- Created: 2024-02-12T18:42:10.000Z (over 2 years ago)
- Default Branch: dev
- Last Pushed: 2024-02-16T22:17:10.000Z (over 2 years ago)
- Last Synced: 2025-01-15T14:12:14.659Z (over 1 year ago)
- Topics: bootstrap5, devise, postgresql, ruby, ruby-on-rails
- Language: Ruby
- Homepage: https://spendsmart-hf5z.onrender.com
- Size: 286 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
SpendSmart
# 📗 Table of Contents
- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [💻 Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [📝 License](#license)
The **SpendSmart** keeps track of all your expences associated with catogories. It will allow you to:
- This name emphasizes the action of spending money wisely
- create new transactions in order keep track of your expences
- update/delete existing transactions
- create new categories in order to classify your expences by categories
- see the calculated total amount of expences per category
- update/delete existing categories
Client
Server
Database
- **create/update/delete categories of transactions (expences)**
- **create/update/delete transactions (expences) associated with a category**
- **calculate total amount of expences for each category**
- The Live Demo is available [here](https://spendsmart-hf5z.onrender.com/)
To get a local copy up and running, follow these steps.
### Prerequisites
In order to run this project you need:
- GitHub account;
- Git installed on your OS;
- VSCode (or another code editor);
- modern browser (supporting HTML5 and CSS3) is highly recommended;
- [Ruby](https://www.ruby-lang.org/en/documentation/installation/) installed;
- [Ruby on Rails](https://gorails.com/guides) installed;
- [Node.js and npm](https://nodejs.org/) installed.
### Setup
Clone this repository to your desired folder:
Login to your GitHub account. Clone this repository to your desired folder:
> cd my-folder
> git clone git@github.com:yusufyusie/budget-application.git
Setup database:
> sudo -u postgres createuser --interactive --pwprompt
(provide the username and password described in [config/database.yml](./config/database.yml))
### Install
Install the dependencies:
> gem install
> npm install
Create database:
> bin/rails db:create
(OPTIONAL) Fill the database with sample records:
> bin/rails db:seed
### Usage
To run the server:
> rails server
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.
### Run tests
To ensure the quality and reliability of our code, we use a variety of testing tools and linters. Here's how you can run them:
- **Run Tests**: We use RSpec for our tests. To run them, use the following command:
```bash
rspec
You can also check linter errors by running these commands:
> rubocop
> npx stylelint "**/*.{css,scss}"
👤 **Yesuf Fenta**
- GitHub: [@yusufyusie](https://github.com/yusufyusie)
- LinkedIn: [in/yusufyusie](https://www.linkedin.com/in/yusufyusie)
- Twitter: [@yusufyusie](https://twitter.com/yusufyusiee)
We're constantly working to improve and expand the functionality of this project. Here are some features we're planning to implement in the future:
- [ ] **Transaction Animations**: To make the user experience more dynamic and engaging, we're planning to add animations to the transaction process.
- [ ] **Desktop Version Styles**: We're working on a design overhaul to ensure our application looks great and is easy to use on desktop devices.
- [ ] **UX/UI Design Improvements**: We're committed to making our application as user-friendly as possible, and we're always looking for ways to improve our UX/UI design.
Stay tuned for these exciting updates!
We welcome all contributions and suggestions! Here's how you can help:
- **Report a bug**: If you've found a problem, please let us know through the [issues page](../../issues/).
- **Suggest a feature**: Have an idea for a new feature? We'd love to hear about it on the [issues page](../../issues/).
- **Submit a pull request**: If you've fixed a bug or implemented a new feature, we'd be thrilled to review your changes.
Remember, all participants are expected to follow our code of conduct.
If you find this project useful, please consider supporting us. Here's how:
- **Star this repository**: It's a simple way to help others discover this project.
- **Share with your network**: If you know someone who would benefit from this project, please share it.
- **Contribute**: See the section above on how to contribute.
Your support means a lot to me!
Original design idea by Gregoire Vella
I would like to thank the [Microverse](https://www.microverse.org/) program for the knowledge and skills I have acquired in Modules 1-5.
I am grateful to all previous project reviewers for their advice. Thanks to them I could build this app.
Special thanks to [Render](https://render.com/) for the deployment platform.
This project is [MIT](./LICENSE) licensed.