6 ms·
Ambient CSS v3 – Blender meets CSS
- __alexs 16d agoThis has mid 2000's LiteStep theme vibes.
- yboris 16d agoLiteStep forever in our hearts ♥
- xgulfie 15d agoImagemap still works btw
- vivzkestrel 15d agomaterial design 3.0?
- stevage 15d agoI don't really see the Blender connection here? This just seems to be a component library leaning heavily on 3D effects and lighting?
- dnpls 15d agoGlad I'm not the only one. It's just skeuomorphic CSS? I guess mentioning Blender must be better for SEO, or maybe that's just what the GPT suggested...
- kikkupico 15d agoThe Blender connection - https://github.com/kikkupico/ambientcss/blob/master/ambient3d/README.md https://github.com/kikkupico/ambientcss/blob/master/ambient3...
- Prydown 15d agoInteresting concept, but CSS alone already feels like I'm wrestling a 3D renderer some days. Hope it doesn't add too much cognitive load.
- voidUpdate 15d agoI enjoy how much the page lags when it loads in a new section. Also how is this related to Blender?
- Trace88 15d agoReminds me of earlier visual CSS tools; the output code was always the problem. Curious if this iteration solves that.
- Saltloaf 15d agoBlender for CSS? The mental image alone is wild. If it simplifies complex layouts, I'm all for it.
- sriniwasx 15d ago[dead]
- noncovalence 15d agoNitpick, but that font really needs a slashed zero.
- caxco93 15d agocan we remove the Blender part of the title? it's totally misleading to say the least. if anything a more accurate word would be PBR or something
- ricardobeat 15d agoIt is meant to be based on Blender renders: https://kikkupico.github.io/ambientcss/ambient-css/grounded https://kikkupico.github.io/ambientcss/ambient-css/grounded
- rahulmax 15d agoI'm going to try using this for enhancing my UI on http://typestax.com http://typestax.com Typestax is where you can pick and choose different typefaces and adjust it, preview them in a website and blog format, and also export your tokens in different formats.
- dzonga 15d agothat's a beautiful ui
- MetroWind 14d agoI'm not sure why they had to mention Blender. It's just regular CSS?
- drcongo 16d agoYou see a lot of this kind of look in AUv3 plugins on the iPad and I love it - it's so nice to have visually tactile interfaces rather than the flat shit that OSs have been forcing on us.
- varispeed 16d agoLooks cool, but I can't see myself using something like this. The readability is poor, it is difficult to gauge if button was pressed or what is selected. But still, I love it!
- isodev 16d agoI love the concept but (at least on mobile Safari) most of it feels unusable.
- kikkupico 16d agoWith the knobs, I just figured out the problem was a stray div from an earlier version of the app overlapping the knobs in the components section of the demo app. I've fixed that now. Checked in both desktop and android Chrome and looks ok. haven't tested in mobile safari yet. P.S: I agree knob controls in general are terrible UX. A real knob is usually turned with two fingers and the way on-screen knobs are operated is nothing like that.
- fwip 16d agoThe knobs are especially difficult to use (on desktop here). The first two knobs only respond to click & vertical drag - moving up rotates clockwise, moving down rotates ccw. Moving left or right does nothing. The second knob's grab handle is just totally wrong, appearing in only about the 4 o'clock to 6 o'lock position.
- SwellJoe 16d agoRound knobs are just a terrible idea. They never work comfortably with a mouse or touchpad, and are often an accessibility challenge.
- esperent 16d agoSame on Brave on Android. But I think that's largely orthogonal to the design, which I like a lot.
- som 16d agoBoth performance and mechanics of the knobs :|
- troupo 16d agoIsn't this just short-lived neumorphic design from a few years back? https://neumorphism.io/#e0e0e0 https://neumorphism.io/#e0e0e0
- smallnix 16d agoIt does take the idea further by anchoring the design system in real world objects.
- woodrowbarlow 16d agoso, skeuomorphic
- graypegg 16d agoNitpick, but elevation would make much more sense if you assumed a base plane + set a perspective, and then translate3d'd upwards on the Z axis. It would grow the size of the element as well. Saying that, probably annoying to work with transformed DOM nodes, but the background being the only thing moving in the "bounce" example just stood out to me as weird. Also, the texures seem to be just gradients or embedded texture data. Was thinking this would use https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/image/paint https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/V... and fall back to gradients/premade images for firefox.
- kikkupico 16d agoOrthographic projection was chosen here deliberately - that's why elevation makes no difference to the size of the object but changes the shadow. Perspective projection won't work well with scrolling because the angle of the object would have to subtly change when the user scrolls. Orthographic projection doesn't need to handle that. The docs have a page where the lighting and camera setup is explained with an actual threejs 3d scene - https://kikkupico.github.io/ambientcss/guide/concept/#how-it-works https://kikkupico.github.io/ambientcss/guide/concept/#how-it... . Hope it helps! Regarding the textures, they respond to lighting but not especially well. In the demo app, you can scroll to the materials page and use the theme switcher at the top to see how the texture respond.
- ricardobeat 16d agoI'm sorry but that's just slop. The elevation in the actual CSS makes the shadow progressively lighter (technically correct, thought the proportions look very wrong, 2 is too dark), while the 3D model has it constant. There is nothing in this 'camera and lighting setup' that was translated to the styles.
- kikkupico 15d agoThe threejs scene in the docs is only for explaining the setup; it doesn't have a raytracer to render shadows accurately. The reference renders for the CSS were done in Blender. See https://kikkupico.github.io/ambientcss/ambient-css/grounded#elevation https://kikkupico.github.io/ambientcss/ambient-css/grounded#... for examples.
- CSSer 16d agoI really dislike how the dribbble/envato style somehow escaped containment into Claude and now I’m seeing it everywhere mixed with mediocre design layouts. I think to myself that maybe stuff like this will help counteract that but then I see it in use with 12px typography (the kubernetes 3D dashboard thing) and I recoil in horror. Please consider this a PSA: Claude doesn’t understand UX or good design principles out of the box. Please go hug a designer.
- graypegg 16d agoUI greebling [0] is something I'm not looking forward to. People always miss out the fact that older information-dense UIs were... information dense. We get this weird simulacrum of information density where the LLM has slapped on "every pod has a machine", a made-up PDU for pods with a watt rating somehow, and random status labels EVERYWHERE. All it's missing is the green circle "LIVE" label that every claude app seems to have... [0] https://en.wikipedia.org/wiki/Greeble https://en.wikipedia.org/wiki/Greeble
- ipdashc 15d agoWow, greebling is a good metaphor for it that I never would have thought of. > "every pod has a machine" Everything you mentioned is annoying, but I think this one is the worst. I don't know why it loves slapping on meaningless info blurbs like that. I guess it carries over from training on test/demo programs where the functionality is clearly spelled out, but on a production UI it looks so bad.
- bargainbin 15d agoI had no idea “eyebrows” was a term until I started using Claude to generate designs. That model is eyebrow crazy, every section of the output has them. Even comprehensive design skills like impeccable miss filtering them out (it only detects “eyebrow chips” and not the prolific barrage of basic eyebrows.)
- dmix 16d agoPro-tip: ask Claude (or Claude Design) to reference the Apple HIG https://developer.apple.com/design/human-interface-guidelines https://developer.apple.com/design/human-interface-guideline... and then review your interfaces
- alexaholic 16d agoWe used to do this during the Web 2.0 era with PNGs, GIFs and `progid:DXImageTransform` because back then you couldn't do it with standard CSS alone. Then as CSS (and MS!) evolved to enable it, the world moved on to flat UIs. It's ironic, isn't it?
- dleeftink 16d agoRemember motiongerm and the whole sleek 60fps flash design thingamabob? Bespoke interfaces everywhere
- alexaholic 16d ago> Bespoke interfaces everywhere From bespoke to Bootstrap, to Tailwindshitification
- phoronixrly 16d ago... To Claudification... All of this project is completely vibecoded.
- mcdonje 16d agoThere was a lot of one-upsmanship at the time. People did it because it was hard. When it wasn't difficult to do anymore, they stopped because it wasn't actually good clean design. Also, early on, there was an idea that cyberspace should resemble meatspace so the meats don't get confused. That's no longer much of a concern.
- thesuitonym 16d ago> they stopped because it wasn't actually good clean design. Unfortunately, they didn't replace it with good, clean design.
- tuvix 16d agoReminds me of VST GUIs, looks great! But, like other commenters have noted, I think a number of these controls might be desktop only, which is totally fine. There’s too much UI stuff centered around mobile anyway these days
- thenthenthen 15d agoSame, a Teenage Engineering VST =D
- SwellJoe 16d agoCounterpoint: I hate VST GUIs. They're often skeuomorphic hell. They love fiddly round knobs which are terrible to control with a mouse or touchpad, and are bad for accessibility. They also tend to have a bunch of mystery meat navigation because the historic hardware UIs they're emulating were forced to bury stuff behind menus due to limitations of the technology, and cost limitations, at the time. Some are better than others, but the priority is often looking cool in screenshots rather than being comprehensible and discoverable. I don't mind shadows and shapes that look three dimensional; affordances that indicate what you can do with an interactive element is great and an improvement over the flat trend. But, VST GUIs are among the worst examples to copy. And, round knobs are probably never the right choice for a computer GUI.
- tuvix 16d agoHaha yeah I think I’m mostly speaking from nostalgia. I do remember wrestling with knobs in Massive or whatever free VSTi back in the day was pretty terrible. I can’t deny I love the look, though.
- immmmmm 16d agoWhile I have a massive collection of VSTs I always end up using my very limited modular and Rytm mk1. And Elektron machines are an UI nightmare.
- tuvix 15d agoIf you can learn Elektron gear it’s like a music creation superpower though. I tried with a Digitakt and couldn’t get into the flow
- inexcf 16d agoGod this site has atrocious scrolling behavior. Allowing me to scroll halfway to the next "page" but then forcing me to stop scrolling and start again to get to the next one made me close the page half way through.
- SwellJoe 16d agoWhen a page about a new GUI thing fucks around with well-defined behaviors, back-button, scrolling, widget interaction, I know I can't trust their judgement. We don't want the same things and it's best if I move on.
- cluckindan 16d agoIsn’t it just scroll-snap?
- inexcf 16d agoNah, this one stops you while you are scrolling and only lets you move on if you stop for a moment.
- charlesrice 16d agoMy favorite is the knobs where some of them you can grab and rotate like they are physical but other ones only react to the vertical position of the cursor so you feel like a crazy person trying to use them
- drfloyd51 16d agoWorked like crap on mobile as well.
- rrr_oh_man 16d agoCan I plug https://mydogisthebest.org https://mydogisthebest.org? If you're into skeumorphism, you'll love it. I put a lot of care into how the buttons and other elements work and interact with each other. (It's a free little dog journaling app I created with my partner to help us cope with losing our dog)
- fugaziboutit 15d agoPlease let a visitor explore (a) what it does, (b) what it actually looks like, before asking them to register. You need to show value before asking for user information even when what you're offering is free. A 30-second demo video on the landing page would be absolutely fine, or half a dozen large screenshots showing the features.
- rrr_oh_man 15d agoI agree with your sentiment, but it's totally fine if no one uses it. It was founder therapy first and foremost (and an exercise in serious play).
- BorisMelnik 16d agowell done! very nicew
- rrr_oh_man 15d agoThanks, Boris
- andrewmcwatters 16d ago[dead]
- irickt 16d agohttps://github.com/kikkupico/ambientcss https://github.com/kikkupico/ambientcss
- microflash 16d ago> A user you’ve blocked has previously contributed to this repository. Sigh.
- jdiff 16d agoOnly 5 "contributors," did you block one of the AI bots bouncing around in there?
- microflash 16d agoYup.
- jdiff 16d agoJust Claude or have you managed to block Jules as well? I haven't figured out Jules yet myself.
- deleted 16d ago[deleted]
- topoheal 16d ago[flagged]
- Quitschquat 16d agoWhy must UI/UX be a fashion. I knew this skeuomorphic shit would return eventually.
- Y-bar 16d agoI’ve been clamouring for the return of usable and at-a-glance understandable interface elements like this!
- noduerme 16d agoI wrote something a bit like this years ago as an experimental portfolio site... a sort of responsive engine managing flat "cards" with CSS shadow cues for depth. (The responsive aspects are all JS on a loop that tweens everything). Ever since Photoshop released drop shadows on the world, I've generally thought that their overuse was a way to mask bad design, but I thought it was interesting at the time to see how far you could get using only drop shadows. Note: This site hasn't been updated in a decade. Not made for dark mode. https://thestrikeagency.com https://thestrikeagency.com
- TechSquidTV 16d agoI had tried (and failed) to do something similar. https://analogui.com/ https://analogui.com/
- rahulmax 15d agoThis is fantastic. Why do you say failed? Fellow 'skeuomorphist' here. (typestax.com)
- TechSquidTV 11d agoIt's incredibly poor performance, unfortunately.
- dnpls 15d agoyeah the light and shadows constantly spinning are a bit much, but it's not all bad!
- nekooooo 16d agoyou definitely reached the limits of skeumorphism. click and drag, especially along an invisible, curved path, is not user-friendly.
- wasmperson 16d agoThe keyboard controls to select a radio button shouldn't depend on the visual orientation of the radio buttons. Browsers get this right by default, but the radio buttons aren't implemented with `<input type="radio">` and instead are just a row of plain buttons and a bunch of javascript. A quick check in the dev tools confirms the other widgets are similarly implemented :( I love the look, though!
- dvt 16d agoSkeuomorphism is back, baby! Apart from the wonky dragging on some of the knobs, I really like these. Kind of reminds me of teenage engineering.
- BugsJustFindMe 16d agoNobody who cares about UX adds virtual knobs to flat interfaces.
- wigster 16d agois it too much to ask for a button in a different colour to the background. ffs
- mminer237 16d agoNeat idea, but feels very poorly made. The light direction governs the whole grid for some reason but stops outside an arbitrary div and often just stops working period, on top of feeling laggy for such a simple effect. Channels are messed up. The example doesn't seem to work, while in the video it just makes two edges white for some reason? The color options and textures are kinda ugly. The glass colors clearly just don't work. "Brass" turns into "Olive" on the last one for no reason? The radio buttons are a bad idea for a digital interface, implemented completely inconsistently(‽), and the middle one just doesn't work at all. Buttons have virtually no feedback if they're pressed or not. Reminds me a lot of Google's material design, at least the older versions of it, just much sloppier and less usable and less colorful.
- danudey 16d agoIt supports a dark theme but then you can't see 90% of what it actually does because drop shadows on dark backgrounds just plain don't work.
- dkersten 16d agoIt’s also glitchy and flickery for me on iOS.
- JackFr 16d agoAnd knobs are a useless control on in any mouse/pointer based interface.
- BorisMelnik 16d agobadass. i so desperately want to use this on a small business website
- eigenblake 16d agoFor a course I'm taking, I made an "Exposure Triangle" demo inspired by Duolingo. This feels like I just struck gold. Whether I use this implementation or another, I'd like to develop a library of these Skeumorphic components. I want to make a later version of my application -- where I make explanatory mathematics and this kind of minimal diegetic interface is exactly what I need to pull that off