HomeViewModel: Four Requests at Once
One screen, four endpoints
The home screen is hungry: the next-walk card needs your bookings, the walker's name on that card needs the walkers, the big dog header needs your pets, and the stat tiles need the server-computed stats. Four independent GET requests. bookings() and walkers() you built in Module 07; pets() and ownerStats() are two more APIClient helpers built exactly the same one-line way.
Await them one after another and the waits add up β four 200 ms requests cost 800 ms of spinner. They don't depend on each other, so they should run at the same time.
The tool is async let: writing async let bookingsCall = APIClient.shared.bookings() starts the request immediately and keeps going β no waiting. Fire off all four, then await each result where it's needed. Total time: the slowest request, not the sum.