Cinema seat booking
Every row of seats and the booking summary are async components built with jsx-async-runtime, which load their data from this.store. The server renders the page with a store that reads a cookie. After a click, the browser re-renders only the parts which changed with the same components and a store that fetches the API. Other guests keep booking seats, so the browser refreshes the seats every 20 seconds.
Without JavaScript, every seat is a button in a plain form, and the server renders the whole page.
- Front €8.00
- Standard €11.00
- Premium €14.00
- Selected
- Taken
- Yours