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

Javascript Capstone Project : Let's Chill #34

Merged
merged 59 commits into from Mar 10, 2022
Merged

Javascript Capstone Project : Let's Chill #34

merged 59 commits into from Mar 10, 2022

Conversation

Nemwel-Boniface
Copy link
Owner

Hello reviewer(s) 👋 👋

😎 This is @zmekonnen251 and @Nemwel-Boniface 's team. 😎
In this Capstone project we were able to:

General requirements

  • There are no linter errors.
  • Followed the Github flow.
  • The documentation is professional.

HTML/CSS & JavaScript requirements

Project requirements

APIs

  • used TVmaze API: data about TV series and movies.
    • Get a list of items with a unique item id (or generate the unique id).
    • For a given item, get detailed information about it.

Interfaces

  • built these interfaces:
    • The home page.
    • The comments popup.
  • followed the layout of the wireframes provided and personalized the rest of the design.
  • Home page
    • When the page loads, the web app retrieves data from:
      • The selected API shows the list of items on screen.
      • The Involvement API to show the item likes.
    • The page makes 2 requests:
      • One to the base API.
      • And one to the Involvement API.
    • When the user clicks on the Like button of an item, the interaction is recorded in the Involvement API and the screen is updated.
  • When the user clicks on the "Comments" button, the Comments popup appears.
  • Home page header and navigation are similar to the given mockup.
  • Home page footer is similar to the given mockup.
  • Comments popup
    • When the popup loads, the web app retrieves data from:
      • The selected API shows details about the selected item.
      • The Involvement API to show the item comments.
    • When the user clicks on the "Comment" button, the data is recorded in the Involvement API and the screen is updated.

Counters
We have counters in all the interfaces that show:

  • The number of items (home).
  • The number of comments (comments popup).

Even if the API gives you these numbers, you will create a specific function to calculate these numbers in each page. These count functions need to be covered with unit tests using Jest.

Technical set up

  • Set up the repository on GitHub and use Gitflow.
  • Set up webpack.
  • Set up a JavaScript testing library (Jest).

Thank you for taking the time to review our project.

Nemwel-Boniface and others added 30 commits March 7, 2022 19:54
Add footer markup and style it for issue #16
Milestone 1 : Complete Project set up
Project Milestone 4 : Display movies
-modifed display page in index.js to uinique id of the cards
Create html elements dynamically for the comment popup
Add event listener for the comment and and close buttons
make the posiotion fixed and blured the background
zmekonnen251 and others added 24 commits March 9, 2022 16:03
-Add a function that post/add a comment to the involement API
-Add a function taht retrieve comments from the involement API
-Add a comment counter
Add functionality for the comment popup section
Add styling for  the movie cards
Add styling for the navbar
@netlify
Copy link

netlify bot commented Mar 10, 2022

✔️ Deploy Preview for mystifying-haibt-69e737 ready!

🔨 Explore the source changes: 36197ba

🔍 Inspect the deploy log: https://app.netlify.com/sites/mystifying-haibt-69e737/deploys/622a30369c64c0000803a2b3

😎 Browse the preview: https://deploy-preview-34--mystifying-haibt-69e737.netlify.app

Copy link

@Amrhub Amrhub left a comment

Choose a reason for hiding this comment

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

Hi @Nemwel-Boniface and @zmekonnen251 , 👋🏻

Good job so far! 👍🏻
There are some issues that you still need to work on to go to the next project but you are almost there!
These changes aim to add some awesomeness to your awesome project and code skills.

To Highlight ✔️

Highly organized and clean code ✔️ 👨🏻‍💻
Professional documentation ✔️
Correct workflow ✔️
Meaningful commit messages ✔️

Required Changes ♻️

Check the comments under the review.

Optional suggestions

Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.

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.


As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

src/index.js Outdated
Comment on lines 149 to 176
event.preventDefault();
if (usernameInput.value !== '' && commentInput.value !== '') {
commentCount += 1;
commentsCounter.innerHTML = `Comments (${commentCount})`;
const username = usernameInput.value;
const comment = commentInput.value;

addCommentToInvolvement(
involvementComments,
i,
username,
comment,
);
}
usernameInput.value = '';
commentInput.value = '';
});
});
movieBtn.append(comment, reservation);
img.src = result.image.medium;
movieDesTop.append(movieTitle, like);
movieDes.append(movieDesTop, likesP);

movie.append(img, movieDes, movieBtn);
movieWrapper.appendChild(movie);
});
}
Copy link

@Amrhub Amrhub Mar 10, 2022

Choose a reason for hiding this comment

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

  • Great project guys, appreciate your effort. there is a just tiny thing that can be improved if figure it will be easy for you 🤓, When a user clicks comment the comments counter increases which are perfect but we also need to update the screen right away just for better feedback for the user. for example, we know as developer that comment will be displayed after refresh but a user if he doesn't get feedback right away it will be a frustrating experience for him.

Comment on lines +1 to +4
const { commentCounterFunc } = require('./modules/commentCounter.js');

const { countAllMovies } = require('./modules/movieCounter.js');

Copy link

Choose a reason for hiding this comment

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

It's always great to see testing 💯

Copy link

@Dipeshtwis Dipeshtwis left a comment

Choose a reason for hiding this comment

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

Hi @Nemwel-Boniface & @zmekonnen251,

Your project is complete! There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

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.


As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

@zmekonnen251 zmekonnen251 merged commit 6f65a9d into main Mar 10, 2022
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.

None yet

4 participants