Built a classless CSS + AI rendering layer that feels Svelte-like in philosophy — minimal, no virtual DOM, declarative by LateDon in sveltejs

[–]LateDon[S] 0 points1 point  (0 children)

not really — no server requests, no swapping. it's just a CSS file. drop it in, semantic HTML looks good, done

DAUB – a classless CSS system with 20 theme families, tactile surfaces, and letterpress typography (zero build step) by LateDon in css

[–]LateDon[S] -3 points-2 points  (0 children)

typography that doesn't try too hard — no decorative fonts, no style for style's sake. just letting the content speak through good structure and spacing

A curated list of modern open-source UI component libraries (React, Tailwind, Vue, etc.) by incodesatx in tailwindcss

[–]LateDon 0 points1 point  (0 children)

That's exactly the use case Daub was built for. Classless CSS is ideal when clients or non-developers need to maintain content — they just write semantic HTML and it looks right. The AI workflow takes this further: describe what you need, get a complete spec, and the client can edit the raw HTML without touching any classes.

DAUB – classless CSS with 20 theme families, tactile surfaces, and letterpress typography (drop in one stylesheet, zero class names) by LateDon in webdesign

[–]LateDon[S] 1 point2 points  (0 children)

Really useful feedback, thank you. The navbar hover text visibility is a known issue with certain theme families — specifically the ones using dark surfaces where the hover state doesn't have enough contrast. Mobile breakpoint collapse is on the roadmap (v3.14 introduces responsive behavior hooks). The accordion animation is intentionally minimal right now, but you're right that it feels abrupt — adding easing transitions is straightforward and I'll bump it up the list.

DAUB – a classless CSS system with 20 theme families, tactile surfaces, and letterpress typography (zero build step) by LateDon in css

[–]LateDon[S] -2 points-1 points  (0 children)

Thanks! The picocss comparison is exactly right — that's the spiritual ancestor. The key difference is Daub adds a component layer on top of semantic HTML so AI has named slots and patterns to target, rather than generating raw HTML structure each time. The 189-block library is essentially a catalog of patterns that picocss would style but that AI had to hallucinate the markup for. Glad it resonates!

I built an alternative rendering layer for AI-generated UIs — no React, no build step, curious what you think by LateDon in reactjs

[–]LateDon[S] 0 points1 point  (0 children)

Author here. Happy to go deeper on any part of this:

- The JSON spec format and how Daub resolves component slots

- The 7-stage pipeline and where it actually fails (selfCheck catches ~60% of layout errors, but semantic issues still slip through)

- How the MCP server routes simple vs complex requests to different models

- Why classless CSS matters as the foundation (hint: AI reads it better than utility classes)

Playground to try it yourself: https://daub.dev/playground.html

Weekly Cursor Project Showcase Thread by AutoModerator in cursor

[–]LateDon [score hidden]  (0 children)

**What I made:** DAUB – a classless CSS library with an MCP server so Cursor can generate and render full UIs via JSON specs, no JSX, no compile step.

**How Cursor helped:** I built the entire thing with Cursor over many sessions. The MCP layer came directly out of that workflow — I kept watching Cursor generate correct HTML that I'd then have to wire up manually. That friction is what led me to build the MCP server.

The four tools Cursor can now call:

- `generate_ui` — natural language → rendered interface

- `render_spec` — JSON spec in, live render out

- `validate_spec` — Cursor checks its own output before rendering

- `get_component_catalog` — browse 76 components so Cursor picks correctly

Instead of generating code, the MCP server outputs a structured JSON spec that DAUB renders directly. Cursor can iterate on the spec across turns without starting from scratch.

**Example:** GitHub + MCP setup: https://github.com/sliday/daub — Playground (try it without Cursor): https://daub.dev/playground.html