1. Intro to Scheduling and Availability
2. The Rules We Will Follow
3. Rendering the Party Size Options
4. Rendering a DatePicker Component
5. Dynamically Rendering the Time Options
6. Understanding Many to Many Relationships
7. Defining Our New Models
8. The Availability Endpoint Overview
9. Building the Availability Endpoint
10. Step 1 Determining the Search Times
11. Step 2 Fetching the Bookings
12. Step 3 Compressing the Booking
13. Step 4 Fetching the Restaurant Tables
14. Step 5 Reformatting the Search Times
15. Step 6 Filtering Out the Booked Tables
16. Step 7 Determining the Availability
17. Step 8 Filtering by Restaurant Time Window
18. Building a useAvailabilities Hook
19. Storing the Reservation Criteria in State
20. Rendering the Available Time Options
21.1 convertToDisplayTime.ts
21. Converting the Time to a Displayable Time