Launching today
GSS - GPU Style Sheets
Write 3D scenes in CSS, compiled to one GPU shader
10 followers
Write 3D scenes in CSS, compiled to one GPU shader
10 followers
GSS is a 3D language for people who already speak CSS. Declare shapes in a @scene, style them with selectors, the cascade, custom properties, and @keyframes, and the compiler turns it all into a single raymarching shader (GLSL for WebGL2, WGSL for WebGPU). No Three.js, no meshes, no UVs. Drop a tag on any page, or try it live in the playground. Open source, Apache 2.0.












































Free
Launch Team

Framer AI AgentsDesign and publish professional sites with AI
Promoted
really cool! Curious how far you plan to push the CSS metaphor, like could I just drop a <gss-scene> into an existing Tailwind site and have it pick up my design tokens?
@louislecat Thanks for asking! I've seen online that some community members already plan to give a try to a "TailwindGSS" project!
But yeah, ideally, on a future version, if you get a file containing your design tokens, they could be usable directly within your .gss file.
> How far you plan to push the CSS metaphor
As far as possible, however, there's one thing to keep in mind: I'd rather avoid confusing people. Especially newcomers in the CSS space. So I need to proceed with care while making the project and syntax evolve!
Just insanely impressive!
@samdotb Thank you, Samuel. Really glad you like it.
The community seems to like it as well; I've put a lot of love and effort into it. I've rebranded numerous times; it was first called VSL - Visual Style Language, then CSL - Cascading Shader Language, and finally ended up with GSS!
My first attempts especially failed, then I sat down for real, defining the base of the AST, the compiler, and the decisions to take to make this language a reality, and I've co-worked with Claude to push this idea to its current state!
As for why it exists, I've always been bugged by the fact that I wanted to write shaders & 3D scenes. GLSL is a language I simply cannot wrap my head around, and sometimes I felt like using ThreeJS for a small shader rendering was way too much.
So I'm happy that I've finally found the best way (for me, and apparently others) to write my 3D scenes with a syntax I can read and apprehend much better!
Please let me know what you think and if you have any feedback!