fulldev-ui 0.5.0-beta.9 → 0.6.0-beta-5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +3 -0
- package/.prettierrc.yaml +1 -0
- package/astro.config.ts +10 -34
- package/cloudcannon.config.yml +235 -0
- package/package.json +25 -29
- package/pnpm-lock.yaml +943 -2157
- package/public/favicon/android-chrome-192x192.png +0 -0
- package/public/favicon/android-chrome-512x512.png +0 -0
- package/public/favicon/apple-touch-icon.png +0 -0
- package/public/favicon/manifest.webmanifest +7 -3
- package/public/favicon/mstile-150x150.png +0 -0
- package/src/blocks/Banner.astro +14 -29
- package/src/blocks/Contact1.astro +92 -0
- package/src/blocks/Content1.astro +77 -0
- package/src/blocks/Content2.astro +91 -0
- package/src/blocks/Content3.astro +70 -0
- package/src/blocks/Content4.astro +72 -0
- package/src/blocks/Cta1.astro +58 -0
- package/src/blocks/Feature1.astro +61 -0
- package/src/blocks/Features1.astro +66 -0
- package/src/blocks/Footer.astro +100 -3
- package/src/blocks/Header.astro +192 -3
- package/src/blocks/Hero1.astro +60 -0
- package/src/blocks/Logos1.astro +55 -0
- package/src/blocks/Products1.astro +90 -0
- package/src/blocks/Reviews1.astro +75 -0
- package/src/blocks/_Hero.astro +245 -0
- package/src/components/Avatar.astro +28 -9
- package/src/components/Avatars.astro +36 -0
- package/src/components/Badge.astro +63 -24
- package/src/components/Badges.astro +16 -23
- package/src/components/Block.astro +30 -0
- package/src/components/Blocks.astro +26 -0
- package/src/components/Breadcrumb.astro +58 -0
- package/src/components/Button.astro +49 -119
- package/src/components/Buttons.astro +23 -13
- package/src/components/Card.astro +9 -137
- package/src/components/Cards.astro +33 -35
- package/src/components/Carousel.astro +106 -0
- package/src/components/Cart.astro +18 -14
- package/src/components/CartAdd.svelte +76 -0
- package/src/components/CartCheckout.svelte +58 -0
- package/src/components/CartForm.svelte +130 -0
- package/src/components/CartList.svelte +88 -0
- package/src/components/CartQuantity.svelte +81 -0
- package/src/components/CartSummary.astro +16 -105
- package/src/components/CartTotal.svelte +15 -0
- package/src/components/Channel.astro +44 -35
- package/src/components/Channels.astro +20 -6
- package/src/components/Checkbox.astro +52 -27
- package/src/components/Code.astro +52 -0
- package/src/components/Container.astro +25 -0
- package/src/components/Dialog.astro +3 -2
- package/src/components/Drawer.astro +55 -146
- package/src/components/DrawerOld.astro +143 -0
- package/src/components/Element.astro +18 -8
- package/src/components/Form.astro +16 -13
- package/src/components/Gallery.astro +174 -0
- package/src/components/Group.astro +25 -0
- package/src/components/Head.astro +62 -25
- package/src/components/Header.astro +10 -115
- package/src/components/Heading.astro +51 -44
- package/src/components/Icon.astro +29 -33
- package/src/components/Image.astro +18 -68
- package/src/components/Input.astro +65 -51
- package/src/components/Label.astro +20 -15
- package/src/components/Layout.astro +35 -0
- package/src/components/Link.astro +51 -32
- package/src/components/Links.astro +42 -0
- package/src/components/List.astro +41 -16
- package/src/components/LocaleSwitcher.astro +2 -2
- package/src/components/Logo.astro +56 -0
- package/src/components/Menu.astro +21 -17
- package/src/components/Navigation.astro +39 -0
- package/src/components/Panel.astro +25 -0
- package/src/components/Paragraph.astro +55 -0
- package/src/components/Price.astro +4 -4
- package/src/components/Prose.astro +86 -0
- package/src/components/Rating.astro +23 -62
- package/src/components/Search.astro +107 -43
- package/src/components/Section.astro +13 -242
- package/src/components/Select.astro +45 -55
- package/src/components/Sidebar.astro +53 -76
- package/src/components/Social.astro +11 -9
- package/src/components/Socials.astro +9 -5
- package/src/components/Stack.astro +25 -0
- package/src/components/Subheader.astro +59 -0
- package/src/components/Switch.astro +72 -29
- package/src/components/Table.astro +1 -1
- package/src/components/Tagline.astro +31 -13
- package/src/components/Textarea.astro +40 -50
- package/src/components/Themer.astro +76 -0
- package/src/components/Toc.astro +30 -37
- package/src/components/Writeup.astro +34 -65
- package/src/components/_Author.astro +90 -0
- package/src/components/_Header.astro +129 -0
- package/src/components/_Image.astro +79 -0
- package/src/components/_Prose copy.astro +172 -0
- package/src/components/_Sidebar copy.astro +87 -0
- package/src/components/docs/PropsTable.astro +38 -264
- package/src/components/experimental/Window.astro +5 -57
- package/src/content/config.ts +3 -10
- package/src/content/{presets → layouts}/base.yml +52 -73
- package/src/content/pages/blocks/_categories.mdx +0 -2
- package/src/content/pages/blocks/_footer.mdx +0 -2
- package/src/content/pages/blocks/_header.mdx +0 -4
- package/src/content/pages/blocks/_jobs.mdx +0 -2
- package/src/content/pages/blocks/_prices.mdx +0 -2
- package/src/content/pages/blocks/_product.mdx +0 -2
- package/src/content/pages/blocks/_products.mdx +0 -2
- package/src/content/pages/blocks/_stats.mdx +0 -2
- package/src/content/pages/blocks/banner.mdx +0 -2
- package/src/content/pages/blocks/colleagues.mdx +0 -3
- package/src/content/pages/blocks/contact.mdx +0 -2
- package/src/content/pages/blocks/content.mdx +0 -6
- package/src/content/pages/blocks/cta.mdx +0 -10
- package/src/content/pages/blocks/features.mdx +0 -5
- package/src/content/pages/blocks/hero.mdx +0 -5
- package/src/content/pages/blocks/intro.mdx +0 -5
- package/src/content/pages/blocks/posts.mdx +0 -2
- package/src/content/pages/blocks/reviews.mdx +0 -3
- package/src/content/pages/categories/category.md +7 -0
- package/src/content/pages/docs/_internationalization.mdx +55 -0
- package/src/content/pages/docs/_using-blocks.mdx +33 -0
- package/src/content/pages/docs/_using-presets.mdx +49 -0
- package/src/content/pages/docs/blocks.mdx +33 -0
- package/src/content/pages/docs/collections/images.mdx +102 -0
- package/src/content/pages/docs/collections/pages.mdx +119 -0
- package/src/content/pages/docs/collections/presets.mdx +60 -0
- package/src/content/pages/docs/collections.mdx +42 -0
- package/src/content/pages/{base/card.mdx → docs/components/_card.mdx} +2 -5
- package/src/content/pages/{base → docs/components}/_dialog.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_drawer.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_localeswitcher.mdx +1 -2
- package/src/content/pages/{base → docs/components}/_switch.mdx +3 -4
- package/src/content/pages/{typography → docs/components}/_tagline.mdx +3 -4
- package/src/content/pages/docs/components/_toggle.mdx +30 -0
- package/src/content/pages/docs/components/avatar.mdx +34 -0
- package/src/content/pages/{base → docs/components}/badge.mdx +28 -10
- package/src/content/pages/docs/components/badges.mdx +46 -0
- package/src/content/pages/docs/components/button.mdx +78 -0
- package/src/content/pages/docs/components/buttons.mdx +51 -0
- package/src/content/pages/docs/components/channel.mdx +91 -0
- package/src/content/pages/docs/components/channels.mdx +89 -0
- package/src/content/pages/docs/components/checkbox.mdx +34 -0
- package/src/content/pages/docs/components/code.mdx +45 -0
- package/src/content/pages/docs/components/heading.mdx +59 -0
- package/src/content/pages/docs/components/icon.mdx +48 -0
- package/src/content/pages/docs/components/image.mdx +25 -0
- package/src/content/pages/docs/components/input.mdx +40 -0
- package/src/content/pages/{typography → docs/components}/label.mdx +9 -6
- package/src/content/pages/{typography → docs/components}/link.mdx +24 -10
- package/src/content/pages/docs/components/links.mdx +99 -0
- package/src/content/pages/docs/components/list.mdx +44 -0
- package/src/content/pages/docs/components/logo.mdx +36 -0
- package/src/content/pages/docs/components/menu.mdx +89 -0
- package/src/content/pages/docs/components/prose.mdx +36 -0
- package/src/content/pages/docs/components/rating.mdx +76 -0
- package/src/content/pages/{base → docs/components}/section.mdx +2 -3
- package/src/content/pages/{base → docs/components}/select.mdx +1 -11
- package/src/content/pages/docs/components/social.mdx +94 -0
- package/src/content/pages/docs/components/socials.mdx +102 -0
- package/src/content/pages/docs/components/switch.mdx +34 -0
- package/src/content/pages/{base → docs/components}/table.mdx +1 -4
- package/src/content/pages/docs/components/tagline.mdx +46 -0
- package/src/content/pages/docs/components/text.mdx +48 -0
- package/src/content/pages/docs/components/textarea.mdx +34 -0
- package/src/content/pages/docs/components/themer.mdx +49 -0
- package/src/content/pages/docs/components.mdx +37 -0
- package/src/content/pages/docs/customization.mdx +151 -0
- package/src/content/pages/docs/frameworks.mdx +29 -0
- package/src/content/pages/docs/generating-pages.mdx +129 -0
- package/src/content/pages/docs/index.mdx +20 -0
- package/src/content/pages/docs/installation.mdx +50 -0
- package/src/content/pages/docs/layouts.mdx +33 -0
- package/src/content/pages/index.mdx +25 -33
- package/src/content/pages/posts/post.md +7 -0
- package/src/content/pages/products/product.md +20 -0
- package/src/content/pages/showcase/anti-slip-profiles.md +2 -2
- package/src/content/pages/showcase/fulldev-ui.md +1 -1
- package/src/content/pages/showcase/lavis-detailing.md +1 -1
- package/src/content/pages/showcase/leren-trainingsacteren.md +1 -1
- package/src/content/pages/showcase/miele-witgoedcenter-amsterdam.md +1 -1
- package/src/content/pages/showcase/sloepverhuur-bolsward.md +1 -1
- package/src/content/pages/showcase/stark-vulcanising-products.md +1 -1
- package/src/content/pages/showcase/the-gym-haren.md +1 -1
- package/src/content/pages/showcase/van-dillen-antieke-bouwmaterialen.md +1 -1
- package/src/content/pages/showcase.mdx +4 -3
- package/src/css/color.css +0 -10
- package/src/css/custom.css +10 -12
- package/src/css/size.css +2 -11
- package/src/css/theme.css +95 -0
- package/src/env.d.ts +1 -0
- package/src/images/favicon/android-chrome-192x192.png +0 -0
- package/src/images/favicon/android-chrome-512x512.png +0 -0
- package/src/images/favicon/apple-touch-icon.png +0 -0
- package/src/images/favicon/browserconfig.xml +9 -0
- package/src/images/favicon/favicon-16x16.png +0 -0
- package/src/images/favicon/favicon-32x32.png +0 -0
- package/src/images/favicon/favicon-48x48.png +0 -0
- package/src/images/favicon/favicon.ico +0 -0
- package/src/images/favicon/favicon.svg +16 -0
- package/src/images/favicon/manifest.webmanifest +30 -0
- package/src/images/favicon/mstile-150x150.png +0 -0
- package/src/images/favicon/safari-pinned-tab.svg +16 -0
- package/src/images/favicon/yandex-browser-50x50.png +0 -0
- package/src/images/favicon/yandex-browser-manifest.json +9 -0
- package/src/images/logo-1.svg +11 -0
- package/src/images/logo-2.svg +13 -0
- package/src/images/logo-basic.svg +10 -0
- package/src/images/logo-simple.svg +13 -0
- package/src/images/logo-thin.svg +15 -0
- package/src/images/logo.svg +14 -0
- package/src/images/logofat.svg +11 -0
- package/src/integration/index.ts +110 -140
- package/src/layouts/Category.astro +136 -0
- package/src/layouts/Doc.astro +56 -0
- package/src/layouts/Job.astro +60 -0
- package/src/layouts/Page.astro +29 -0
- package/src/layouts/Post.astro +52 -0
- package/src/layouts/Product.astro +114 -0
- package/src/pages/[...page].astro +29 -24
- package/src/pages/test.astro +37 -0
- package/src/schemas/components/avatar.ts +4 -1
- package/src/schemas/components/badge.ts +16 -11
- package/src/schemas/components/block.ts +60 -0
- package/src/schemas/components/button.ts +17 -14
- package/src/schemas/components/channel.ts +15 -9
- package/src/schemas/components/footer.ts +15 -21
- package/src/schemas/components/head.ts +17 -0
- package/src/schemas/components/header.ts +19 -7
- package/src/schemas/components/heading.ts +7 -1
- package/src/schemas/components/icon.ts +7 -1
- package/src/schemas/components/image.ts +38 -16
- package/src/schemas/components/link.ts +17 -0
- package/src/schemas/components/logo.ts +12 -2
- package/src/schemas/components/menu.ts +11 -11
- package/src/schemas/components/navigation.ts +10 -0
- package/src/schemas/components/paragraph.ts +9 -0
- package/src/schemas/components/price.ts +7 -1
- package/src/schemas/components/rating.ts +8 -13
- package/src/schemas/components/sidebar.ts +14 -11
- package/src/schemas/components/social.ts +16 -1
- package/src/schemas/components/tagline.ts +7 -1
- package/src/schemas/imageSchema.ts +33 -4
- package/src/schemas/page.ts +39 -0
- package/src/stores/cart.svelte.ts +79 -0
- package/src/stores/cart.ts +59 -6
- package/src/types/global-props.ts +0 -9
- package/src/types/{virtual-modules.d.ts → virtual.d.ts} +1 -1
- package/src/utils/cart.ts +1 -10
- package/src/utils/formatEntries.ts +8 -0
- package/src/utils/formatEntry.ts +29 -0
- package/src/utils/getDeepReferenceChildren.ts +14 -0
- package/src/utils/getHref.ts +6 -0
- package/src/utils/getReferenceChildren.ts +1 -1
- package/src/utils/setTheme.ts +18 -0
- package/src/utils/slugify.ts +6 -0
- package/svelte.config.js +5 -0
- package/tailwind.config.ts +71 -0
- package/tsconfig.json +1 -3
- package/src/blocks/Article.astro +0 -40
- package/src/blocks/Categories.astro +0 -12
- package/src/blocks/Colleagues.astro +0 -13
- package/src/blocks/Contact.astro +0 -116
- package/src/blocks/Content.astro +0 -12
- package/src/blocks/Cta.astro +0 -15
- package/src/blocks/Excerpt.astro +0 -14
- package/src/blocks/Features.astro +0 -11
- package/src/blocks/Hero.astro +0 -15
- package/src/blocks/Intro.astro +0 -23
- package/src/blocks/Jobs.astro +0 -12
- package/src/blocks/Posts.astro +0 -11
- package/src/blocks/Prices.astro +0 -24
- package/src/blocks/Product.astro +0 -110
- package/src/blocks/Products.astro +0 -11
- package/src/blocks/Reviews.astro +0 -13
- package/src/components/CartForm.astro +0 -121
- package/src/components/CartList.astro +0 -134
- package/src/components/Footer.astro +0 -193
- package/src/components/Text.astro +0 -43
- package/src/components/ThemeSelect.astro +0 -41
- package/src/components/experimental/Form.astro +0 -53
- package/src/components/experimental/Gallery.astro +0 -104
- package/src/components/experimental/Logo.astro +0 -38
- package/src/components/experimental/Prose.astro +0 -192
- package/src/components/sections.astro +0 -28
- package/src/content/pages/base/button.mdx +0 -60
- package/src/content/pages/base/checkbox.mdx +0 -42
- package/src/content/pages/base/icon.mdx +0 -55
- package/src/content/pages/base/image.mdx +0 -42
- package/src/content/pages/base/input.mdx +0 -56
- package/src/content/pages/base/rating.mdx +0 -55
- package/src/content/pages/base/textarea.mdx +0 -58
- package/src/content/pages/base/theme-select.mdx +0 -15
- package/src/content/pages/layouts/_layout.mdx +0 -14
- package/src/content/pages/layouts/docslayout.mdx +0 -14
- package/src/content/pages/overview/components.mdx +0 -75
- package/src/content/pages/overview/content-collections.mdx +0 -139
- package/src/content/pages/overview/frameworks.mdx +0 -198
- package/src/content/pages/overview/installation.mdx +0 -53
- package/src/content/pages/overview/introduction.mdx +0 -30
- package/src/content/pages/overview/theming.mdx +0 -69
- package/src/content/pages/schemas/page.mdx +0 -17
- package/src/content/pages/schemas/preset.mdx +0 -9
- package/src/content/pages/showcase/record.md +0 -3
- package/src/content/pages/typography/heading.mdx +0 -73
- package/src/content/pages/typography/list.mdx +0 -51
- package/src/content/pages/typography/text.mdx +0 -61
- package/src/content/presets/blocks.yml +0 -1
- package/src/content/presets/docs.yml +0 -6
- package/src/css/space.css +0 -77
- package/src/css/styles.css +0 -0
- package/src/images/avatar-1.yml +0 -1
- package/src/integration/generate-colors.ts +0 -639
- package/src/integration/tailwind-plugin.ts +0 -80
- package/src/integration/unocss-preset.ts +0 -84
- package/src/layouts/BlockLayout.astro +0 -19
- package/src/layouts/ContactLayout.astro +0 -21
- package/src/layouts/DocsLayout.astro +0 -73
- package/src/layouts/Layout.astro +0 -163
- package/src/layouts/OverviewLayout.astro +0 -42
- package/src/layouts/PostLayout.astro +0 -21
- package/src/layouts/ProductLayout.astro +0 -21
- package/src/loaders/imageLoader.ts +0 -26
- package/src/schemas/components/avatars.ts +0 -4
- package/src/schemas/components/buttons.ts +0 -4
- package/src/schemas/components/card.ts +0 -25
- package/src/schemas/components/cards.ts +0 -4
- package/src/schemas/components/channels.ts +0 -4
- package/src/schemas/components/images.ts +0 -4
- package/src/schemas/components/list.ts +0 -3
- package/src/schemas/components/section.ts +0 -15
- package/src/schemas/components/sections.ts +0 -3
- package/src/schemas/components/socials.ts +0 -4
- package/src/schemas/components/text.ts +0 -3
- package/src/schemas/components/toc.ts +0 -3
- package/src/schemas/components/writeup.ts +0 -20
- package/src/schemas/pageSchema.ts +0 -101
- package/src/schemas/presetSchema.ts +0 -3
- package/src/schemas/utils/navigation.ts +0 -8
- package/src/schemas/utils/parents.ts +0 -3
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
title: Frameworks
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Frameworks
|
|
7
|
-
|
|
8
|
-
Fulldev UI is written in vanilla CSS and .astro files. It is framework agnostic.
|
|
9
|
-
|
|
10
|
-
## JS frameworks
|
|
11
|
-
|
|
12
|
-
All styles in Fulldev UI use regular CSS and classes. Classes use the following naming convention:
|
|
13
|
-
|
|
14
|
-
- Component classes are the same as the component name, like `button` for `<Button>`.
|
|
15
|
-
- Prop classes have the prop name as prefix, like `variant-primary` for `<Button variant="primary">`.
|
|
16
|
-
- If a prop is a boolean the class is added without a prefix, like `contrast`.
|
|
17
|
-
|
|
18
|
-
This means you can apply Fulldev UI styles to any framework component as follows:
|
|
19
|
-
|
|
20
|
-
```astro live
|
|
21
|
-
---
|
|
22
|
-
import Button from 'fulldev-ui/components/Button.astro'
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
<a class="button variant-primary contrast">Button</a>
|
|
26
|
-
<Button contrast>Button</Button>
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
## CSS frameworks
|
|
30
|
-
|
|
31
|
-
A TailwindCSS plugin and UnoCSS preset is available.
|
|
32
|
-
|
|
33
|
-
### TailwindCSS
|
|
34
|
-
|
|
35
|
-
In your `tailwind.config.ts` add the following:
|
|
36
|
-
|
|
37
|
-
```ts
|
|
38
|
-
// tailwind.config.ts
|
|
39
|
-
import fulldevUI from 'fulldev-ui/tailwind'
|
|
40
|
-
|
|
41
|
-
export default {
|
|
42
|
-
plugins: [fulldevUI],
|
|
43
|
-
}
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
In your `astro.config.ts` add the following:
|
|
47
|
-
|
|
48
|
-
```ts
|
|
49
|
-
// astro.config.ts
|
|
50
|
-
import tailwind from '@astrojs/tailwind'
|
|
51
|
-
|
|
52
|
-
export default defineConfig({
|
|
53
|
-
integrations: [
|
|
54
|
-
tailwind({
|
|
55
|
-
// Disable injecting styles, import manually instead
|
|
56
|
-
applyBaseStyles: false,
|
|
57
|
-
}),
|
|
58
|
-
],
|
|
59
|
-
})
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
Import the css file file below anywhere in your project.
|
|
63
|
-
|
|
64
|
-
```css
|
|
65
|
-
@tailwind base layer(base);
|
|
66
|
-
@tailwind components;
|
|
67
|
-
@tailwind utilities;
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### UnoCSS
|
|
71
|
-
|
|
72
|
-
In your `uno.config.ts` add the following:
|
|
73
|
-
|
|
74
|
-
```ts
|
|
75
|
-
// uno.config.ts
|
|
76
|
-
import fulldevUI from 'fulldev-ui/unocss'
|
|
77
|
-
|
|
78
|
-
export default defineConfig({
|
|
79
|
-
injectReset: false,
|
|
80
|
-
presets: [fulldevUI],
|
|
81
|
-
})
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
Do not use `injectReset` when using the UnoCSS preset, as it will conflict with the reset provided by Fulldev UI. If you do want a style reset, be sure to import it in the `base` layer, similar to the TailwindCSS example above.
|
|
85
|
-
|
|
86
|
-
## Utility classes
|
|
87
|
-
|
|
88
|
-
The following classes are available when using the Tailwind plugin or UnoCSS preset.
|
|
89
|
-
|
|
90
|
-
### Spacing
|
|
91
|
-
|
|
92
|
-
The following spacing classes are added to your tailwind/uno config.
|
|
93
|
-
|
|
94
|
-
You can use them like `p-space-1`, `m-space-1`, `h-space-1`, `w-space-1`, etc.
|
|
95
|
-
|
|
96
|
-
```ts
|
|
97
|
-
spacing: {
|
|
98
|
-
'space-1': 'var(--space-1)',
|
|
99
|
-
'space-2': 'var(--space-2)',
|
|
100
|
-
'space-3': 'var(--space-3)',
|
|
101
|
-
'space-4': 'var(--space-4)',
|
|
102
|
-
'space-5': 'var(--space-5)',
|
|
103
|
-
'space-6': 'var(--space-6)',
|
|
104
|
-
'space-7': 'var(--space-7)',
|
|
105
|
-
},
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
### Font size
|
|
109
|
-
|
|
110
|
-
The following spacing classes are added to your tailwind/uno config.
|
|
111
|
-
|
|
112
|
-
You can use them like `text-1`, `text-2`, `text-3`, etc.
|
|
113
|
-
|
|
114
|
-
```ts
|
|
115
|
-
fontSize: {
|
|
116
|
-
1: 'var(--text-1)',
|
|
117
|
-
2: 'var(--text-2)',
|
|
118
|
-
3: 'var(--text-3)',
|
|
119
|
-
4: 'var(--text-4)',
|
|
120
|
-
5: 'var(--text-5)',
|
|
121
|
-
6: 'var(--text-6)',
|
|
122
|
-
7: 'var(--text-7)',
|
|
123
|
-
8: 'var(--text-8)',
|
|
124
|
-
}
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
### Border radius
|
|
128
|
-
|
|
129
|
-
The following border radius classes are added to your tailwind/uno config.
|
|
130
|
-
|
|
131
|
-
You can use them like `rounded-1`, `rounded-2`, `rounded-3`, etc.
|
|
132
|
-
|
|
133
|
-
```ts
|
|
134
|
-
borderRadius: {
|
|
135
|
-
1: 'var(--radius-1)',
|
|
136
|
-
2: 'var(--radius-2)',
|
|
137
|
-
3: 'var(--radius-3)',
|
|
138
|
-
}
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
### Color classes
|
|
142
|
-
|
|
143
|
-
The following color classes are added to your tailwind/uno config.
|
|
144
|
-
|
|
145
|
-
You can use them like `bg-color-1`, `text-base-2`, `border-base-6`, etc.
|
|
146
|
-
|
|
147
|
-
```ts
|
|
148
|
-
colors: {
|
|
149
|
-
color: {
|
|
150
|
-
1: 'var(--color-1)',
|
|
151
|
-
2: 'var(--color-2)',
|
|
152
|
-
3: 'var(--color-3)',
|
|
153
|
-
4: 'var(--color-4)',
|
|
154
|
-
5: 'var(--color-5)',
|
|
155
|
-
6: 'var(--color-6)',
|
|
156
|
-
7: 'var(--color-7)',
|
|
157
|
-
8: 'var(--color-8)',
|
|
158
|
-
9: 'var(--color-9)',
|
|
159
|
-
10: 'var(--color-10)',
|
|
160
|
-
11: 'var(--color-11)',
|
|
161
|
-
12: 'var(--color-12)',
|
|
162
|
-
contrast: 'var(--color-contrast)',
|
|
163
|
-
background: 'var(--color-background)',
|
|
164
|
-
},
|
|
165
|
-
base: {
|
|
166
|
-
1: 'var(--color-base-1)',
|
|
167
|
-
2: 'var(--color-base-2)',
|
|
168
|
-
3: 'var(--color-base-3)',
|
|
169
|
-
4: 'var(--color-base-4)',
|
|
170
|
-
5: 'var(--color-base-5)',
|
|
171
|
-
6: 'var(--color-base-6)',
|
|
172
|
-
7: 'var(--color-base-7)',
|
|
173
|
-
8: 'var(--color-base-8)',
|
|
174
|
-
9: 'var(--color-base-9)',
|
|
175
|
-
10: 'var(--color-base-10)',
|
|
176
|
-
11: 'var(--color-base-11)',
|
|
177
|
-
12: 'var(--color-base-12)',
|
|
178
|
-
contrast: 'var(--color-base-contrast)',
|
|
179
|
-
background: 'var(--color-base-background)',
|
|
180
|
-
},
|
|
181
|
-
brand: {
|
|
182
|
-
1: 'var(--color-brand-1)',
|
|
183
|
-
2: 'var(--color-brand-2)',
|
|
184
|
-
3: 'var(--color-brand-3)',
|
|
185
|
-
4: 'var(--color-brand-4)',
|
|
186
|
-
5: 'var(--color-brand-5)',
|
|
187
|
-
6: 'var(--color-brand-6)',
|
|
188
|
-
7: 'var(--color-brand-7)',
|
|
189
|
-
8: 'var(--color-brand-8)',
|
|
190
|
-
9: 'var(--color-brand-9)',
|
|
191
|
-
10: 'var(--color-brand-10)',
|
|
192
|
-
11: 'var(--color-brand-11)',
|
|
193
|
-
12: 'var(--color-brand-12)',
|
|
194
|
-
contrast: 'var(--color-brand-contrast)',
|
|
195
|
-
background: 'var(--color-brand-background)',
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
```
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
title: Installation
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Link from 'fulldev-ui/components/Link.astro'
|
|
7
|
-
|
|
8
|
-
# Installation
|
|
9
|
-
|
|
10
|
-
You can add fulldev-ui to your project, or use the starter template.
|
|
11
|
-
|
|
12
|
-
## Add to existing project
|
|
13
|
-
|
|
14
|
-
### Automatic setup
|
|
15
|
-
|
|
16
|
-
Use the astro add command to automatically install the dependencies and add the integration.
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
npx astro add fulldev-ui
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Manual installation
|
|
23
|
-
|
|
24
|
-
Install fulldev-ui with your favorite package manager.
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
pnpm i fulldev-ui
|
|
28
|
-
# or
|
|
29
|
-
bun i fulldev-ui
|
|
30
|
-
# or
|
|
31
|
-
yarn add fulldev-ui
|
|
32
|
-
# or
|
|
33
|
-
npm i fulldev-ui
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Then setup the integration in your `astro.config.ts` file.
|
|
37
|
-
|
|
38
|
-
```ts
|
|
39
|
-
import { defineConfig } from 'astro/config'
|
|
40
|
-
import fulldev from 'fulldev-ui/integration'
|
|
41
|
-
|
|
42
|
-
export default defineConfig({
|
|
43
|
-
integrations: [fulldev()],
|
|
44
|
-
})
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Using the starter template
|
|
48
|
-
|
|
49
|
-
The easiest way to get started is to use the [starter template](https://github.com/fulldotdev/starter).
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
pnpm create astro@latest -- --template fulldotdev/starter
|
|
53
|
-
```
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
title: Introduction
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Introduction
|
|
7
|
-
|
|
8
|
-
**Fulldev UI** is a full-featured UI library and website theme built on the [Astro](https://astro.build/) framework. Whether starting a new project or enhancing an existing one, this guide will help you get set up. For installation details, see the [installation guide](/getting-started/installation).
|
|
9
|
-
|
|
10
|
-
## Why we built it
|
|
11
|
-
|
|
12
|
-
We built **Fulldev UI** after repeatedly encountering the same challenges in client projects, covering the core needs of content-focused websites. Initially created for [our own company](https://full.dev), we decided to open-source it for others to use.
|
|
13
|
-
|
|
14
|
-
## Some features
|
|
15
|
-
|
|
16
|
-
- Vanilla HTML and CSS.
|
|
17
|
-
- Seamless integration with TailwindCSS and UnoCSS.
|
|
18
|
-
- Minimal JavaScript.
|
|
19
|
-
- Supports Astro's [Content Collections](https://docs.astro.build/en/guides/content-collections/).
|
|
20
|
-
- Customizable via CSS variables.
|
|
21
|
-
- Reusable components for pages and sections.
|
|
22
|
-
- Includes blocks like Hero, CTA, Features, etc.
|
|
23
|
-
- Page-building tools.
|
|
24
|
-
- And more...
|
|
25
|
-
|
|
26
|
-
## A word of caution
|
|
27
|
-
|
|
28
|
-
**Fulldev UI** includes a wide range of features, some still experimental. While a narrower focus would improve stability, we built it for flexibility in our projects.
|
|
29
|
-
|
|
30
|
-
This isn't just a single-purpose library; it's a framework for building blog, marketing, and portfolio websites—similar to how [Starlight](https://starlight.astro.build/) serves documentation. As it evolves, its focus will sharpen. In the meantime, feel free to use it and share feedback on [Discord](https://discord.gg/fulldev)!
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
title: Theming
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
import Link from 'fulldev-ui/components/Link.astro'
|
|
7
|
-
|
|
8
|
-
# Theming
|
|
9
|
-
|
|
10
|
-
With the fulldev-ui integration you can easily set a theme and generate a palette based on <Link href="https://www.radix-ui.com/colors">Radix Colors.</Link>
|
|
11
|
-
|
|
12
|
-
## Configuration
|
|
13
|
-
|
|
14
|
-
### Generating a color palette
|
|
15
|
-
|
|
16
|
-
- **css** is the path to your custom css file that applies to all pages on your site.
|
|
17
|
-
- **colors** is an object that defines the colors for your site.
|
|
18
|
-
- **theme** is the default theme for your site.
|
|
19
|
-
- **dark** and **light** are objects that define the colors for the dark and light themes, these three properties are used to generate a color pallete using radix colors.
|
|
20
|
-
|
|
21
|
-
```ts
|
|
22
|
-
import { defineConfig } from 'astro/config'
|
|
23
|
-
import fulldev from 'fulldev-ui/integration'
|
|
24
|
-
|
|
25
|
-
// https://astro.build/config
|
|
26
|
-
export default defineConfig({
|
|
27
|
-
integrations: [
|
|
28
|
-
fulldev({
|
|
29
|
-
css: '/src/css/custom.css',
|
|
30
|
-
colors: {
|
|
31
|
-
theme: 'dark',
|
|
32
|
-
dark: {
|
|
33
|
-
background: '#111110',
|
|
34
|
-
base: '#6F6D66',
|
|
35
|
-
brand: '#F50',
|
|
36
|
-
},
|
|
37
|
-
light: {
|
|
38
|
-
background: '#EEEEEC',
|
|
39
|
-
base: '#6F6D66',
|
|
40
|
-
brand: '#F50',
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
}),
|
|
44
|
-
],
|
|
45
|
-
})
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### Generating favicons
|
|
49
|
-
|
|
50
|
-
We've integrated <Link href="https://github.com/ACP-CODE/astro-favicons">astro-favicons</Link> into fulldev-ui to generate favicons from a svg file.
|
|
51
|
-
|
|
52
|
-
```ts
|
|
53
|
-
import { defineConfig } from 'astro/config'
|
|
54
|
-
import fulldev from 'fulldev-ui/integration'
|
|
55
|
-
|
|
56
|
-
// https://astro.build/config
|
|
57
|
-
export default defineConfig({
|
|
58
|
-
integrations: [
|
|
59
|
-
fulldev({
|
|
60
|
-
favicon: 'src/images/favicon.svg', // can also be png, webp, jpg, etc.
|
|
61
|
-
// other options here
|
|
62
|
-
}),
|
|
63
|
-
],
|
|
64
|
-
})
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## Overwriting styles
|
|
68
|
-
|
|
69
|
-
Since Fulldev UI uses just regular CSS with low specificity, you can customize anything else using custom CSS.
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
|
|
4
|
-
title: page
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# page-schema
|
|
8
|
-
|
|
9
|
-
Objects in the page schema are used to define the structure of a page. They are used to define the information, content and components that are used to render the page.
|
|
10
|
-
|
|
11
|
-
import { Code } from 'astro:components'
|
|
12
|
-
import { zodToTs, createTypeAlias, printNode } from 'zod-to-ts'
|
|
13
|
-
import pageSchema from 'fulldev-ui/schemas/pageSchema'
|
|
14
|
-
|
|
15
|
-
export const identifier = 'Page'
|
|
16
|
-
export const node = zodToTs(pageSchema, identifier)
|
|
17
|
-
export const typeAlias = createTypeAlias(node, identifier)
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
|
|
4
|
-
title: Heading
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Heading
|
|
8
|
-
|
|
9
|
-
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
10
|
-
|
|
11
|
-
```astro live
|
|
12
|
-
---
|
|
13
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
<Heading>The quick brown fox jumps</Heading>
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Props
|
|
20
|
-
|
|
21
|
-
<PropsTable />
|
|
22
|
-
|
|
23
|
-
## Examples
|
|
24
|
-
|
|
25
|
-
```astro live
|
|
26
|
-
---
|
|
27
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
<Heading level={1}>The quick brown fox jumps</Heading>
|
|
31
|
-
<Heading level={2}>The quick brown fox jumps</Heading>
|
|
32
|
-
<Heading level={3}>The quick brown fox jumps</Heading>
|
|
33
|
-
<Heading level={4}>The quick brown fox jumps</Heading>
|
|
34
|
-
<Heading level={5}>The quick brown fox jumps</Heading>
|
|
35
|
-
<Heading level={6}>The quick brown fox jumps</Heading>
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
```astro live
|
|
39
|
-
---
|
|
40
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
<Heading size="sm">The quick brown fox jumps</Heading>
|
|
44
|
-
<Heading size="md">The quick brown fox jumps</Heading>
|
|
45
|
-
<Heading size="lg">The quick brown fox jumps</Heading>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
```astro live
|
|
49
|
-
---
|
|
50
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
<Heading>The quick brown fox jumps</Heading>
|
|
54
|
-
<Heading contrast={false}>The quick brown fox jumps</Heading>
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
```astro live
|
|
58
|
-
---
|
|
59
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
<Heading color="base">The quick brown fox jumps</Heading>
|
|
63
|
-
<Heading color="brand">The quick brown fox jumps</Heading>
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
```astro live
|
|
67
|
-
---
|
|
68
|
-
import Heading from 'fulldev-ui/components/Heading.astro'
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
<Heading contrast={false} color="base">The quick brown fox jumps</Heading>
|
|
72
|
-
<Heading contrast={false} color="brand">The quick brown fox jumps</Heading>
|
|
73
|
-
```
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
|
|
4
|
-
title: List
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# List
|
|
8
|
-
|
|
9
|
-
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
10
|
-
|
|
11
|
-
```astro live
|
|
12
|
-
---
|
|
13
|
-
import List from 'fulldev-ui/components/List.astro'
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
<List items={['Item 1', 'Item 2']} />
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Props
|
|
20
|
-
|
|
21
|
-
<PropsTable />
|
|
22
|
-
|
|
23
|
-
## Examples
|
|
24
|
-
|
|
25
|
-
```astro live
|
|
26
|
-
---
|
|
27
|
-
import List from 'fulldev-ui/components/List.astro'
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
<List size="sm" items={['Item 1', 'Item 2']} />
|
|
31
|
-
<List size="md" items={['Item 1', 'Item 2']} />
|
|
32
|
-
<List size="lg" items={['Item 1', 'Item 2']} />
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
```astro live
|
|
36
|
-
---
|
|
37
|
-
import List from 'fulldev-ui/components/List.astro'
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
<List color="base" items={['Item 1', 'Item 2']} />
|
|
41
|
-
<List color="brand" items={['Item 1', 'Item 2']} />
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
```astro live
|
|
45
|
-
---
|
|
46
|
-
import List from 'fulldev-ui/components/List.astro'
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
<List items={['Item 1', 'Item 2']} />
|
|
50
|
-
<List contrast items={['Item 1', 'Item 2']} />
|
|
51
|
-
```
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
presets: [docs]
|
|
3
|
-
|
|
4
|
-
title: Text
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Text
|
|
8
|
-
|
|
9
|
-
import PropsTable from 'fulldev-ui/components/docs/PropsTable.astro'
|
|
10
|
-
|
|
11
|
-
```astro live
|
|
12
|
-
---
|
|
13
|
-
import Text from 'fulldev-ui/components/Text.astro'
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
<Text>The quick brown fox jumps over the lazy dog</Text>
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Props
|
|
20
|
-
|
|
21
|
-
<PropsTable />
|
|
22
|
-
|
|
23
|
-
## Examples
|
|
24
|
-
|
|
25
|
-
```astro live
|
|
26
|
-
---
|
|
27
|
-
import Text from 'fulldev-ui/components/Text.astro'
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
<Text size="sm">The quick brown fox jumps over the lazy dog</Text>
|
|
31
|
-
<Text size="md">The quick brown fox jumps over the lazy dog</Text>
|
|
32
|
-
<Text size="lg">The quick brown fox jumps over the lazy dog</Text>
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
```astro live
|
|
36
|
-
---
|
|
37
|
-
import Text from 'fulldev-ui/components/Text.astro'
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
<Text lead size="sm">The quick brown fox jumps over the lazy dog</Text>
|
|
41
|
-
<Text lead size="md">The quick brown fox jumps over the lazy dog</Text>
|
|
42
|
-
<Text lead size="lg">The quick brown fox jumps over the lazy dog</Text>
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
```astro live
|
|
46
|
-
---
|
|
47
|
-
import Text from 'fulldev-ui/components/Text.astro'
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
<Text color="base">The quick brown fox jumps</Text>
|
|
51
|
-
<Text color="brand">The quick brown fox jumps</Text>
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
```astro live
|
|
55
|
-
---
|
|
56
|
-
import Text from 'fulldev-ui/components/Text.astro'
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
<Text>The quick brown fox jumps</Text>
|
|
60
|
-
<Text contrast>The quick brown fox jumps</Text>
|
|
61
|
-
```
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
component: BlockLayout
|
package/src/css/space.css
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
.root + .root,
|
|
2
|
-
.root + .box,
|
|
3
|
-
.root + .masonry,
|
|
4
|
-
.root + .carousel,
|
|
5
|
-
.image + .root,
|
|
6
|
-
.icon + .root {
|
|
7
|
-
--space-auto: var(--space-6);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.root + .group,
|
|
11
|
-
.root + .row,
|
|
12
|
-
.root + .wrap,
|
|
13
|
-
.root + .button,
|
|
14
|
-
.root + .price,
|
|
15
|
-
.root + .switch {
|
|
16
|
-
--space-auto: var(--space-5);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.card
|
|
20
|
-
:is(
|
|
21
|
-
.root + .root,
|
|
22
|
-
.root + .box,
|
|
23
|
-
.root + .masonry,
|
|
24
|
-
.root + .carousel,
|
|
25
|
-
.image + .root,
|
|
26
|
-
.icon + .root,
|
|
27
|
-
.root + .group,
|
|
28
|
-
.root + .row,
|
|
29
|
-
.root + .wrap,
|
|
30
|
-
.root + .button,
|
|
31
|
-
.root + .price,
|
|
32
|
-
.root + .switch
|
|
33
|
-
) {
|
|
34
|
-
--space-auto: var(--space-4);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.root + .heading,
|
|
38
|
-
.root + .link,
|
|
39
|
-
.root + .paragraph,
|
|
40
|
-
.root + .text,
|
|
41
|
-
.root + .tagline,
|
|
42
|
-
.root + .input,
|
|
43
|
-
.root + .textarea,
|
|
44
|
-
.root + .select,
|
|
45
|
-
.root + .badge,
|
|
46
|
-
.root + .rating {
|
|
47
|
-
--space-auto: var(--space-4);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.paragraph + .paragraph,
|
|
51
|
-
.text + .text,
|
|
52
|
-
.button + .button,
|
|
53
|
-
.input + .button {
|
|
54
|
-
--space-auto: var(--space-3);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.root + .label,
|
|
58
|
-
.label + .input,
|
|
59
|
-
.label + .textarea,
|
|
60
|
-
.label + .select,
|
|
61
|
-
.icon + .icon {
|
|
62
|
-
--space-auto: var(--space-2);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.rating + .text,
|
|
66
|
-
.text + .rating {
|
|
67
|
-
--space-auto: var(--space-1);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
.image + .root,
|
|
71
|
-
.icon + .root {
|
|
72
|
-
--space-auto: var(--space-6);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
.link + .heading {
|
|
76
|
-
--space-auto: var(--space-5);
|
|
77
|
-
}
|
package/src/css/styles.css
DELETED
|
File without changes
|
package/src/images/avatar-1.yml
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
alt: worlddd
|