sylva README

The project's README from github.com/MengTo/sylva. As one markdown file: README.md.

Sylva

Sylva is an interactive Three.js landscape study: a procedural, moss-covered root grows through an editorial conservation hero and reacts to the pointer as if it were alive.

View the live experience

Sylva's living moss landscape and editorial interface

What is inside

How it is made

The complete page lives in index.html. It uses a vendored Three.js r149 build to create the root, moss, undergrowth, flowers, moths, pointer spray, light, and camera movement at runtime. The same seeded noise grows the same landscape on every load; no model file or pre-rendered moss plate is downloaded.

The interface is plain HTML and CSS around that scene. Pointer parallax, the navigation dock, the card reveals, and the WebGL renderer share one animation loop. The two liquid-metal controls remain isolated in sandboxed iframes so each control can own its WebGL2 state without leaking into the page.

Everything required at runtime is included in this repository. The page makes no external network request after it loads.

Run locally

Serve the repository root over HTTP:

python3 -m http.server 4173 --bind 127.0.0.1

Then visit http://127.0.0.1:4173/.

There is no install or build step. A browser with WebGL2 support is recommended; the page retains its layout and core content if the main Three.js scene cannot start.

Project structure

sylva/
├── index.html                  # Complete experience
├── sylva-assets/
│   ├── three.min.js             # Vendored Three.js r149 runtime
│   ├── lexend-latin.woff2       # Local Lexend variable font
│   ├── liquid-metal-explore.html
│   ├── liquid-metal-play.html
│   └── card-*.webp               # Field-note imagery
├── assets/                     # README preview
├── licenses/                   # Third-party license texts
└── README.md

With me

Design and attribution

The layout began as an independent study of an editorial conservation composition by Daniel Snows. Sylva preserves the broad compositional idea while replacing its foreground artwork with original procedural geometry, shaders, motion, and interactions. It is not affiliated with or endorsed by the original designer.

The local project notes record Higgsfield image generation and compositing for the supporting imagery. Three.js r149 is distributed under the MIT License, and Lexend is distributed under the SIL Open Font License 1.1; their license texts are included in licenses/.

No license is granted for reuse or redistribution of the Sylva code, design, or artwork. The bundled third-party components remain under their respective licenses.

sylva (MengTo/sylva)

procedural-generation
Searching Database…

348 ·GitHub
What is this?Sylva is an interactive Three.js landscape study: a procedural, moss-covered root grows through an editorial conservation scene and reacts to the pointer as if it were alive.
Is this a reusable library or just a standalone page?It's a standalone, self-contained web page, not a library you import — the entire experience lives in one index.html built on a vendored Three.js r149 build.
How do I run it locally?Just serve the repository root over any HTTP server and open the page — there's no install step or build pipeline.
Do I need anything besides a browser?Just a browser with WebGL2 support; if the Three.js scene can't start, the page still keeps its layout and core content.
Is the moss landscape randomly different each time I visit?No — it's deterministic: the same seeded noise regrows the identical root, moss, and undergrowth on every load, with nothing downloaded like a pre-rendered moss plate or 3D model.
Does the page contact any server after it loads?No — all geometry, noise, and imagery needed at runtime ship in the repo, and the page makes no external network request after it loads.
Can I reuse the code, design, or artwork?No — Sylva's own code, design, and artwork are not licensed for reuse or redistribution, though the bundled Three.js (MIT) and Lexend font (OFL) keep their own open licenses.
What happens to the moss when I move the pointer?The moss parts around the cursor and releases a short pollen trail as the pointer moves across the landscape, animated in the same loop as the rest of the scene.
Are the Explore and Play buttons part of the main 3D scene?No, each liquid-metal button runs in its own sandboxed WebGL2 iframe so its shader state can't leak into the main page's renderer.
How much moss does it actually render?Up to 250,000 instanced moss blades on desktop, built from swept tube geometry with recursive offshoots, ferns, flowers, and particles.
Where did the original composition idea come from?The layout started as an independent study of an editorial conservation composition by designer Daniel Snows; Sylva swaps the foreground artwork for original procedural geometry and motion and is not affiliated with the original designer.
Creator
MengTo
Size
1.8 MB
Stars
348
Updated
CommitAug 18
Age
2mo
Commits · 90 Days