{"id":16447474,"url":"https://github.com/eduardosancho/budget","last_synced_at":"2026-05-17T14:34:13.613Z","repository":{"id":39679247,"uuid":"495610004","full_name":"eduardosancho/budget","owner":"eduardosancho","description":"Mobile app to organize spending and group transactions into categories.","archived":false,"fork":false,"pushed_at":"2022-05-30T18:34:58.000Z","size":45006,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"development","last_synced_at":"2025-02-26T11:44:42.954Z","etag":null,"topics":["budget","database","ruby"],"latest_commit_sha":null,"homepage":"https://rocky-cliffs-67926.herokuapp.com/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eduardosancho.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-23T23:58:37.000Z","updated_at":"2022-05-30T18:33:30.000Z","dependencies_parsed_at":"2022-08-23T18:21:04.912Z","dependency_job_id":null,"html_url":"https://github.com/eduardosancho/budget","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eduardosancho/budget","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eduardosancho%2Fbudget","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eduardosancho%2Fbudget/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eduardosancho%2Fbudget/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eduardosancho%2Fbudget/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eduardosancho","download_url":"https://codeload.github.com/eduardosancho/budget/tar.gz/refs/heads/development","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eduardosancho%2Fbudget/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33142227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T09:28:26.183Z","status":"ssl_error","status_checked_at":"2026-05-17T09:27:52.702Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["budget","database","ruby"],"created_at":"2024-10-11T09:50:49.021Z","updated_at":"2026-05-17T14:34:11.660Z","avatar_url":"https://github.com/eduardosancho.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](https://img.shields.io/static/v1?label=BY\u0026message=eduardosancho\u0026color=gold)\n![](https://img.shields.io/badge/Microverse-blueviolet)\n\n# Budget App\n![Rails](https://img.shields.io/badge/rails-%23CC0000.svg?style=for-the-badge\u0026logo=ruby-on-rails\u0026logoColor=white)\n![Postgres](https://img.shields.io/badge/postgres-%23316192.svg?style=for-the-badge\u0026logo=postgresql\u0026logoColor=white)\n![Bootstrap](https://img.shields.io/badge/bootstrap-%23563D7C.svg?style=for-the-badge\u0026logo=bootstrap\u0026logoColor=white)\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./MIT.md)\n![rails version](https://img.shields.io/badge/Rails-7-red)\n![ruby version](https://img.shields.io/badge/Ruby-3.x-orange)\n\n[Live Demo](https://rocky-cliffs-67926.herokuapp.com/)\n\n# Preview\n\u003cdiv style='display: flex'\u003e\n  \u003cimg src='./screenshot2.png'\u003e\n  \u003cimg src='./screenshot.png'\u003e\n\u003c/div\u003e\n\u003chr\u003e\n\n# Table of Contents\n\n- [Description](#description)\n- [Built With](#built-with)\n- [Setup](#setup)\n  - [Clone Repo](#clone-repo)\n  - [Prerequisites](#prerequisites)\n  - [Install Rails](#install-rails)\n- [Getting Started](#getting-started)\n  - [System Dependencies](#system-dependencies)\n  - [Database Initialization](#database-initialization)\n- [Usage](#usage)\n  - [Start Server](#start-server)\n  - [Testing RSpec](#testing-rspec)\n- [How To Contribute?](#how-to-contribute)\n- [Collaborators](#collaborators)\n- [Show Your Support](#how-your-support)\n- [Acknowledgments](#acknowledgments)\n- [License](#license)\n\u003chr\u003e\n\n## Description\n\u003e Mobile application that allows users to organize their finances by recording transactions and assigning them categories.\n\u003chr\u003e\n\n## Built With\n\n- Major languages: Ruby, HTML, Bootstrap 5.\n- Frameworks: Ruby on Rails.\n- Tools \u0026 Methods: AWS, ActiveStorage, RSpec, PostgreSQL, Devise.\n\u003chr\u003e\n\n# Setup\n\nWe'll need to prepare your computer to handle Ruby on Rails, which might be a hassle, so take a deep breath and cope with me :)\n\nIf you have Rails 7 installed, you can skip to the [Getting Started](#getting-started) section\n\n## Clone Repo\n\nFirst clone this repo by running this command in your terminal:\n~~~ bash\ngit clone https://github.com/eduardosancho/budget.git\n# wait a couple seconds for it to download\n# ...\n# ...\n# then move into the new directory\ncd budget\n~~~\n\u003chr\u003e\n\n## Prerequisites\n\nThe following technologies must be installed before hand in your local machine:\n\n - Ruby (ruby --version). Should be 3.0.1 or newer.\n - SQLite3 (sqlite3 --version)\n - Node.js (node --version)\n - Yarn (yarn --version)  \n\nThe commands in parenthesis `()` can be used to verify if they are installed and their corresponding versions.\n\nRefer to [Section 3](https://guides.rubyonrails.org/v5.1/getting_started.html#:~:text=3%20Creating%20a%20New%20Rails%20Project) from the official [Rails Guide](https://rubyonrails.org/) for more detailed instructions on how to install these technologies.\n\u003chr\u003e\n\n### Install Rails\nOnce that's done, we can install Rails. For that, run these commands in your terminal:\n~~~ bash\ngem install rails\n# wait a few seconds for it to download\n# ...\n# ...\n# verify that it was installed by running\nrails --version\n~~~\n\u003chr\u003e\n\n# Getting Started\nThe next steps setup the playing field for you to run the app in your local machine.\n\n## System Dependencies\n\nWe're getting there... trust me ;)\n\nExecute this command to automatically install all the dependencies needed to view and work on this project:\n\n~~~ bash\nbundle install\n~~~\n\nThe full list of dependencies can be found within the [Gemfile](Gemfile).\n\nThis also installs PostgreSQL, which you'll need for the next step.\n\u003chr\u003e\n\n## Database Initialization\nThe following command will create the database and populate it with default data:\n~~~ bash\nrails db:setup\n~~~\nThe databases will be called `budget_development` and `budget_test`, you can access them manually via the command `rails db`.\n\u003chr\u003e\n\n## Usage\nIf you got to this point, congratulations! You now have spent 2 hours in order to toy with my app. I appreciate your effort :P\n\n## Start Server\nThe following command should start a server\n~~~ bash\nrails server\n\n#or\n\n./bin/dev\n~~~\nWhich you can visit by going to http://localhost:3000 in your browser.\n\u003chr\u003e\n\n## Testing RSpec\nRSpec tests belong in another folder, which is [/spec](/spec/), all thanks to the ruby **magic** called `naming conventions`.\nAnyway, to run tests located in the spec folder run:\n~~~ bash\nbundle exec rspec spec\n~~~\n\u003chr\u003e\n\n## How To Contribute?\n\nAlways remember to commit your contributions on a different branch. You can create a new one by running `git checkout -b \u003cbranchname\u003e`.\n\nVisit [linters folder](.github/workflows/linters.yml) to learn how to setup linters.\n\nThen check linters locally before pushing by running:\n~~~ bash\nnpx stylelint \"**/*.{css,scss}\" --fix\n# ...\n# ...\nbundle exec rubocop -A\n~~~\n\nFinally, once your changes have no linter errors and all [tests](#testing-rails) are passing, try to merge your branch into  `development` by running:\n~~~ bash\ngit checkout development\ngit merge \u003cbranchname\u003e\n~~~\nContinue by solving any merge conflicts that may arise, test the functionality of the app once more, and you're changes are ready to be pushed with `git push origin \u003cbranchname\u003e`\n\u003chr\u003e\n\n# That's all folks!\n\n## Collaborators\n👤 **Eduardo**\n\n Platform | Badge |\n --- | --- |\n **GitHub**  | [@eduardosancho](https://github.com/eduardosancho)\n **Twitter** | [@sanchitoblog](https://twitter.com/sanchitoblog)\n **LinkedIn** | [Eduardo Sancho Solano](https://www.linkedin.com/in/eduardo-sancho-solano/)\n\u003chr\u003e\n \n## Show your support\n\nGive a ⭐️ if you like this project!\n\u003chr\u003e\n\n## Acknowledgments\n\nThe ideas and inspiration from this project are coming from this online school of software development:\n [**Microverse**](https://www.microverse.org/)\n\nThe design of this app belongs to [**@gregoirevella**](https://www.behance.net/gregoirevella), you can find it on [**Behance**](https://www.behance.net/gallery/19759151/Snapscan-iOs-design-and-branding?tracking_source=).\n\u003chr\u003e\n\n## 📝 License\n\nThis project is [MIT](./MIT.md) licensed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feduardosancho%2Fbudget","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feduardosancho%2Fbudget","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feduardosancho%2Fbudget/lists"}