Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Budget App (v1.0.0) #12

Closed
wants to merge 119 commits into from
Closed

Budget App (v1.0.0) #12

wants to merge 119 commits into from

Conversation

Zilola-Nazarova
Copy link
Owner

@Zilola-Nazarova Zilola-Nazarova commented Nov 23, 2023

Hello and welcome to "Smart Pocket"

In this project, I created SmartPocket app that keeps track of all your expences associated with catogories.

It allows you to:

  • 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

General requirements:

  • there are no linter errors
  • correct Gitflow is used
  • work is documented in a professional way

Project requirements:

The project is deployed and accessible online.

I followed the design guidelines from SnapScan (Colors, Typography, Layout). I gave appropriate credit to the author the Aknowledgements section of README.

I created unit, request and integration tests for all the most important components of the app.

User input is always validated to make sure that anyone with bad intentions cannot compromise the app.

Presentation: https://drive.google.com/file/d/15PRIRaL0HMnhjX8lCclfmoLDdjb2kCEq/view?usp=sharing

Splash screen

A simple page with the name of the app, and links to the sign up and log in pages (built with Devise).

Sign up and log in pages

You are able to register in the app with full name, email and password.
You can log into the app using email and password.
You can't access other pages unless you are logged in.

Home page (categories page)

When you log in, you are presented with the categories page.
For each category, you can see their name, icon and the total amount of all the transactions that belongs to that category.
Whn you click on a category item, the application navigates to the transactions page for that category.
There is a button "add category" at the bottom that brings you to the page to create a new category.

Transactions page

For a given category, the list of transactions is presented, ordered by the most recent.
At the bottom of the page you can see the total amount for the category.
There is a button "add transaction" at the bottom that brings you to the page to create a new transaction.
When you click on the "Back" button (<), you navigate to the home page.

Additional features:

  • if category is empty (has no associated transactions), you will see 'Delete' button that will delete this category
  • if you click on the category item, you will navigate to the page to edit this category
  • if you click on the transaction item, you will navigate to the Transaction Details page, where you can edit/delete this transaction

"Add a new category" page

You can fill out a form to create a new category, indicating their name and icon (both mandatory).
When you click "Save" button to create the new category, you are taken to the home page on success.
When you click on the "Back" button (<), you navigate to the home page.

"Add a new transaction" page

You can fill out a form to create a new transaction with:

  • name (mandatory)
  • amount (mandatory)
  • categories (mandatory at least one)

When you click "Save" button to create the new transaction, you are taken to the transactions page for that category.
When you click on the "Back" button (<), you navigate to the transactions page for that category.

…y and index for each table as required by UML diagram
…sts cases as they will be added in future branches)
…, Style/BlockComments and Layout/CommentIndentation
…action, style TransactionsController show action
…ate a user, and perform confirmation and login actions
…a bug (unchecked groups in transaction update where not removing the association)
…a Database Cleaning strategy in spec_helper.rb
Copy link

@Omar-Muhamad Omar-Muhamad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Invalid ❌

Hi @Zilola-Nazarova,

While you made a great effort in this project, unfortunately, I cannot proceed to review your code.

Your Code Review Request is marked as invalid for this reason:

  • Gitflow workflow is not correctly used, Kindly make this Pull Request to compare changes from the feature branch to the development(dev) branch.

[Hint] You can fix this problem by renaming your current dev branch to something like final-version and create a new dev branch from the main branch then create a new PR from final-version into dev to achieve the correct gitflow and have all changes inside your PR.

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏

Cheers and Happy coding!👏👏👏

Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.


Invalid Code Review Request Does not count into the code reviews limit.

@Zilola-Nazarova
Copy link
Owner Author

@Omar-Muhamad
I followed the steps from https://github.com/microverseinc/curriculum-transversal-skills/blob/main/code-review/articles/code_review_flow_group_projects.md

It is said that for the external review we should open a PR from the dev branch into the main branch.

Copy link

@Nemwel-Boniface Nemwel-Boniface left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @Zilola-Nazarova 👋,

I am Nemwel your reviewer.

This is an additional review as a result of the second opinion request.

I have received your second opinion request with a complaint about the previous reviewer @Omar-Muhamad . Below are my findings:

I have inspected your project and I have noticed that the reviewer was actually correct when marking your code review request as invalid. I also noticed that you seem to have followed the wrong article which you linked as a comment. Kindly note that that article is titled "Code review flow for group projects at Microverse" take note of group project. The Budget App is a solo project.

The correct flow that is supposed to be used for this project can be found in the general requirements section. I will link a screenshot below:

image

To try to explain it for you the difference in Gitflow and GitHub flow:

  1. For group capstone projects the correct flow for requesting reviews is Github flow which means dev merging to main.
  2. For solo capstone projects the flow for requesting reviews is Gitflow which means feature branch merging to dev. Please refer to this article which explains how to use GitFlow.

What you need to do to make things right you can follow the steps I will include for you below:

  1. Create a new branch and name it as development. Please also make it the default branch. Follow this document to learn how you can rename your branch.
  2. Rename the current dev branch to a feature branch name such as "budget_app_complete".
  3. Close the current PR and open the new feature branch (budget_app_complete) and merge it to your development branch.
  4. Following the above steps will allow you to follow the correct flow and you will not have any issues with the reviewers.

As the above steps will be done in GitHub and not your local machine, I strongly advise to delete the local copy of the project and reclone it again once you have made the above changes. This is because we want to avoid any conflicts that might occur when you try to make a change from a branch that does not exist locally.

In case anything is not 100% clear tag me @Nemwel-Boniface so that I get the notification.

Keep rocking 🚀!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants