Skip to content

Conversation

@zainbilalh
Copy link
Contributor

@zainbilalh zainbilalh commented Nov 14, 2025

Added HighlightsViewModel with loading, filtering, and clean separation of highlights into structured lists for the views.
Added NoHighlightView
Implemented networking for fetching articles and YouTube videos.

(This looks like a big PR, but the lines of code mostly come from HighlightsViewModel, which copies a lot of its structure from already existing GamesViewModel and PastGameViewModel

Networking:
I originally implemented both fetches using separate completion handlers, but since both are always needed, I switched to an async/await setup and grouped the calls.
This is my first time using async/await in Swift, so I’d appreciate extra attention on that part to make sure the approach is correct and safe.

Next Steps:

Logic:

- Update date formatting once the backend provides consistent date fields
- Re-test filtering once sportsType values are fixed on the backend

Style

  • Add an animated loading screen
  • Make the sticky headings work

Other

  • Explore ways to load images more efficiently (and retry on failure)

@zainbilalh zainbilalh marked this pull request as ready for review November 14, 2025 03:43
@zainbilalh zainbilalh self-assigned this Nov 14, 2025
Copy link
Contributor

@MrPeterss MrPeterss left a comment

Choose a reason for hiding this comment

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

Nice work zain, just a couple of comments!

Copy link
Contributor

@angelinaa-chen angelinaa-chen left a comment

Choose a reason for hiding this comment

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

Nice PR Zain! A couple comments, and maybe let's wait until back-end pushes their changes to test the sportsType filtering before merging. Otherwise, looks amazing :) great work!!

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.

4 participants