Marble chess and a members’ salon
A chess atelier and salon concept set around hand-carved marble sets and the memory of famous games. The board is both object and stage.
The project is live at https://gambit.aarya.cyou/. The site is an interactive concept; its booking, purchase, or application invitations do not complete real transactions.
This project treats chess as an atmosphere to enter. Its selected scenes move from The Immortal Game to The salon, giving the central subject several different scales and moods. The result is a designed world rather than a catalogue of screens.
| No. | Scene | Place in the story |
|---|---|---|
| 1 | The Immortal Game | A historic game becomes a guided scene. |
| 2 | Carrara | Pale stone catches the light. |
| 3 | Nero Marquina | Dark marble holds the other side. |
| 4 | The salon | A place to keep the game going. |
These scenes are a selection from the full site. The page also contains supporting editorial sections and a closing invitation.
Near-black rooms, bone marble, brass, and a touch of crimson give the pieces the gravity of sculpture.
The color plate below records the project's ground, ink, accent, and secondary tone. The type families in the design are Bodoni Moda · Inter.
The experience is built for the browser, with a visual scene that responds to the page and pointer. Its text remains arranged as a readable sequence of sections. The screenshot below shows the opening composition.
Opening scene captured from the original project.
| Part | Tools |
|---|---|
| Site and build | JavaScript, Vite, Tailwind CSS, custom CSS |
| Three-dimensional scene | Three.js and project-specific shaders/models |
| Motion and scrolling | GSAP, ScrollTrigger, Lenis |
| Hosting configuration | Cloudflare Pages, wrangler.jsonc |
The site is one project at the repository root. The current application is in src/; render, asset, input, scroll, and UI utilities are in src/core/. Old collection material is preserved under docs/archive/.
Use Node.js 22.12 or newer:
npm ci
npm run devVite serves the site at http://127.0.0.1:5190/. To build and preview the production output:
npm run build
npm run previewThe build writes to dist/; preview serves it at http://127.0.0.1:5191/.
For Cloudflare Pages, connect the repository's main branch. Use npm run build as the build command, dist as the output directory, and the repository root as the root directory. The React (Vite) preset supplies the build values; wrangler.jsonc also records the Pages output directory. The live site is https://gambit.aarya.cyou/; pushes to main deploy through the connected GitHub repository.
| Path | Contents |
|---|---|
index.html |
Single site entry |
src/ |
Scene, styles, shaders, and page modules |
src/core/ |
Shared rendering and interaction utilities |
public/ |
Project models and images |
docs/ |
Project art, screenshot, credits, and notices |
docs/archive/ |
Preserved earlier collection material |
wrangler.jsonc |
Cloudflare Pages output configuration |
The repository has separate rights scopes. Reuse rights for one part do not extend to the others:
| Material | Terms |
|---|---|
| Adapted source code | MIT license, with the original copyright retained |
| New project SVGs and original presentation | Gambit content notice |
| Zyrix Dev name and marks, where referenced | Zyrix Dev brand notice |
| Models, source images, and the screenshot | Asset licenses |
| Libraries and web fonts | Third-party notices |
The source project and contributors are acknowledged in Credits. The original source copyright remains in LICENSE.
