A NOTE FROM THE FOUNDER

Why I started RevaCSS

The problem I want to solve is repeated design work.

The same decisions, repeated

A website can contain dozens of buttons, cards, forms and navigation elements that should share the same appearance. Colours, spacing, shape and interaction states need to stay consistent. As a project grows, keeping those decisions aligned can become a task of its own.

Existing frameworks offer useful approaches. Utility frameworks give developers detailed control over individual elements. Component frameworks provide ready-made patterns. Semantic CSS frameworks make ordinary HTML look good with little configuration.

I wanted to explore a balance centred on shared defaults.

Set the direction once

With RevaCSS, you choose appearance settings on a page or section, and its components inherit them. Local attributes handle exceptions. The intention is to make a design change feel like changing a shared decision, with fewer individual components to revisit.

A section can have its own palette or shape while the rest of the page keeps its defaults. Supported descendants consume those settings; classes identify reusable patterns such as cards and alerts. Ordinary CSS remains available for custom design.

See how shared defaults and local overrides work.

Let the browser do more

I also wanted the browser to do more of the work. Native elements and interactions provide the foundation wherever they fit. The core requires no JavaScript runtime, and the compiled stylesheet can be used without setting up a CSS build process.

This keeps the framework close to the HTML a developer can read and understand. Applications continue to own their data, routing and business logic. Native patterns have specific browser requirements and behaviour, which the component guides document.

Built to work with AI, too

I also designed RevaCSS to be approachable for AI-assisted development, including vibe coding. Readable HTML, consistent data attributes and dedicated AI documentation give coding assistants clear patterns to follow. Developers can describe what they want, use AI to create a starting point, then refine the interface through shared appearance settings and ordinary CSS. My aim is to make that process easier to understand, customise and maintain.

The AI guide, supported attribute reference and documented component structures give an assistant explicit context. These resources help describe the framework accurately; the developer still reviews the result and decides how the site should work.

Explore the AI and vibe-coding guide.

The direction I want to keep

RevaCSS is for developers who value readable HTML, useful component defaults and a consistent appearance they can adjust through a small, documented API.

That is the direction I want to keep developing: shared design decisions, native browser capabilities, and room for the developer’s own choices.