Budget App is a mobile web application where you can manage your budget: you have a list of transactions associated with a category, so that you can see how much money you spent and on what.
- Under construction
- Ruby on Rails
- TailwindCSS
To get a local copy up and running follow these simple steps:
First Steps
- Clone it using git command:
git clone https://github.com/ArthurGC/budget-app.git
Run in development (locally)
- Install gem files and dependencies:
bundle install
npm install or yarn install
- Setup you database.yml with your own postgres's password or create a PASS_POSTGRES environment variable
password: <%= ENV["PASS_POSTGRESQL"] %>
- Setup db and seed file
rails db:setup
rails db:seed
- Run server
rails assets:precompile
rails server
If you can't see the styles for any reason try with this:
(two terminals at the same time)
Run in a terminal
bin/webpack-dev-server
Run in other terminal
rails server
Run tests
- To run all tests in the project
rspec
If you wanna run a certain test file
rspec spec/test_file_path
- Use ruby gems as software packages system.
- Install Ruby on Rails framework.
- Understand Rails RESTful design and router.
- Use controllers to handle requests and render empty views.
- Use params from browser request in a safe way.
- Use preprocessed html file with embedded Ruby code.
- Use layouts and templates for shared content.
- Use database migration files to maintain database schema.
- Use validations for models.
- Secure app from n+1 problems.
- Understand what ORM is.
- Write SQL queries with ActiveRecord.
- Set up associations between models.
- Build a webapp that requires the user to log in.
- Use devise gem for authentication.
- Limit access to webapp resources based on authorization rules.
- Analyze in writing why you have made a coding choice using one structure over another.
👤 ArthurGC
- GitHub: @ArthurGC
- Twitter: @ArthurGC_22
- LinkedIn: alxguzmanc
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
Give a ⭐️ if you like this project!
This project is MIT licensed.