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

Level 500: Build a front page #9

Open
SallyMcGrath opened this issue Feb 26, 2024 · 0 comments
Open

Level 500: Build a front page #9

SallyMcGrath opened this issue Feb 26, 2024 · 0 comments
Labels
🏕 Priority Mandatory This work is expected 📅 Sprint 3 Assigned during Sprint 3 of this module 🎯 Topic Communication Reading, writing, speaking, and listening in English; expressing our ideas 🎯 Topic Iteration Prototyping, testing, analysing, and refining in a cycle of development 🎯 Topic Teamwork Working productively with other people

Comments

@SallyMcGrath
Copy link
Member

SallyMcGrath commented Feb 26, 2024

Level 500

For level 500, you must switch back to your original codebase.

You must have merged someone else's level 400 implementation.

Once again, compare their implementation to yours. Think:

  1. How is it different?
  2. What do you prefer about your implementation?
  3. What do you prefer about their implementation?
  4. What did you learn that you didn't know before?

Have a discussion about your answers to these questions. In class, together give a 3 minute talk about your conclusions. Do this in small groups so you don't spend hours doing this.

Refactoring

Feel free to change anything in your codebase which you think will make it easier to work with, or to build new features.

Have your partner review any changes you have, and make sure they understand them.

Adding new functionality

Level 500 is about adding a front-page which lets users select (and find) shows from your shows list.

Requirements

  1. When your app starts, present a listing of all shows ("shows listing")
    1. For each show, you must display at least name, image, summary, genres, status, rating, and runtime.
  2. When a show name is clicked, your app should:
    1. Fetch and present episodes from that show (enabling episode search and selection as before)
    2. Hide the "shows listing" view
  3. Add a navigation link to enable the user to return to the "shows listing"
    1. When this is clicked, the episodes listing should be hidden
  4. Provide a free-text show search through show names, genres, and summary texts
  5. Ensure that your episode search and episode selector controls still work correctly when you switch from shows listing to episodes listing and back
  6. During one user's visit to your website, you should never fetch any URL more than once.

Screenshot of minimal version

Note: Provided your project meets the above requirements, it can look however you want.

Here is one example layout.

Screenshot of a website with a drop-down list with the show "Breaking Bad" selected

@SallyMcGrath SallyMcGrath changed the title Level 500: Complete Level 500: Build a front page Feb 26, 2024
@SallyMcGrath SallyMcGrath added 🎯 Topic Communication Reading, writing, speaking, and listening in English; expressing our ideas 🎯 Topic Iteration Prototyping, testing, analysing, and refining in a cycle of development 🎯 Topic Teamwork Working productively with other people 📅 Sprint 4 Assigned during Sprint 4 of this module 🏕 Priority Mandatory This work is expected labels Feb 26, 2024
@SallyMcGrath SallyMcGrath added 📅 Sprint 3 Assigned during Sprint 3 of this module and removed 📅 Sprint 4 Assigned during Sprint 4 of this module labels Nov 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏕 Priority Mandatory This work is expected 📅 Sprint 3 Assigned during Sprint 3 of this module 🎯 Topic Communication Reading, writing, speaking, and listening in English; expressing our ideas 🎯 Topic Iteration Prototyping, testing, analysing, and refining in a cycle of development 🎯 Topic Teamwork Working productively with other people
Projects
Status: 📋 Backlog
Development

No branches or pull requests

1 participant