Fulldev UI
Github Docs
Join our discord for updates and chats

The Astro UI library to build content sites

Make good looking websites, no matter your design skills

Build full pages with just components

Introducing segment components; build entire pages in minutes.

Works with any JS / CSS framework

Integrates seamlessly with Tailwind, UnoCSS, Svelte, Vue or anything else.

Automated colors, spacing and sizes

You never have to think about responsiveness or color palettes again.

Have a look at some examples

A section with equal columns

On mobile it's a single column, of course. All without having to think about responsiveness. It just works. Have a look at the code, it's down below.

placeholder
---
import { Button, Column, Heading, Image, Row, Section, Text } from 'fulldev-ui'
---
<Section structure="split" align="center">
<Column>
<Heading> A section with equal columns </Heading>
<Text>
On mobile it's a single column, of course. All without having to think
about responsiveness. It just works. Have a look at the code, it's down
below.
</Text>
<Row>
<Button contrast href="/overview/installation"> Installation </Button>
<Button contrast variant="soft" href="/structure/split">
Component
</Button>
</Row>
</Column>
<Image src="/placeholder.jpeg" />
</Section>

A panel to grab attention

You can also make it stand out even more, with brighter colors

Let's get started
---
import { Button, Heading, Section, Text } from 'fulldev-ui'
---
<Section align="center" frame="panel" size="xl" variant="surface">
<Heading> A panel to grab attention </Heading>
<Text> You can also make it stand out even more, with brighter colors </Text>
<Button href="/segment/section" contrast> Let's get started </Button>
</Section>
---
import {
Button,
Card,
Carousel,
Heading,
Image,
Row,
Section,
Spread,
Text,
} from 'fulldev-ui'
const cards = Array.from({ length: 18 })
---
<Section size="sm">
<Spread align="center">
<Heading> Buy some components </Heading>
<Button href="/structure/carousel" contrast> View component </Button>
</Spread>
<Carousel position="inset">
{
cards.map((card) => (
<Card frame="none" href="/structure/carousel">
<Image src="/product-placeholder.jpeg" />
<Row>
<Heading level={3}>Component</Heading>
<Text> - $20</Text>
</Row>
</Card>
))
}
</Carousel>
</Section>

Build content websites
in a fraction of time

Get Started Components