Majmar
A shisha lounge on Dubai Creek with a hall, a terrace, and a cabana
Turn the line-drawn pavilion, pick a table right on the model, choose a time around sample bookings, and prepare a request text for your group.
Three.js
Design problem
A menu and a booking form do not show where a guest will sit or what the house rules are for a group. Guests need to see the space, choose a seat, and understand the conditions before contacting the lounge.
Down the page



Main user flow
-
Explore the pavilion
Rotate the model of the hall, terrace, and cabana; zone tabs fly the camera to each part.
-
Choose a table
Click a table on the model to see its seats, sample free time for today, and whether shisha is served there.
-
Prepare a request
Drag the time on a timeline with sample bookings, add guests and a mix, then copy the request text. No table is reserved.
Key decisions
-
Keep the page scrolling over a 3D scene
A plain wheel scrolls the page; zooming needs Ctrl or ⌘, and a vertical swipe on a phone scrolls instead of turning the model.
-
Three languages in one layout
Russian, English, and right-to-left Arabic share one layout built on logical CSS properties.
Kadr Motion design school on an editing timeline