fulldev-ui 0.5.0-beta.8 → 0.6.0-beta.0

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.
Files changed (236) hide show
  1. package/.env.example +3 -0
  2. package/.prettierrc.yaml +1 -0
  3. package/astro.config.ts +6 -32
  4. package/package.json +21 -30
  5. package/pnpm-lock.yaml +696 -2176
  6. package/public/favicon/android-chrome-192x192.png +0 -0
  7. package/public/favicon/android-chrome-512x512.png +0 -0
  8. package/public/favicon/apple-touch-icon.png +0 -0
  9. package/public/favicon/manifest.webmanifest +7 -3
  10. package/public/favicon/mstile-150x150.png +0 -0
  11. package/src/blocks/Banner.astro +6 -19
  12. package/src/blocks/Colleagues.astro +0 -1
  13. package/src/blocks/Contact.astro +75 -74
  14. package/src/blocks/Content.astro +124 -6
  15. package/src/blocks/Cta.astro +0 -2
  16. package/src/blocks/Excerpt.astro +0 -2
  17. package/src/blocks/Footer.astro +107 -3
  18. package/src/blocks/Hero.astro +238 -9
  19. package/src/blocks/Intro.astro +89 -11
  20. package/src/blocks/Prices.astro +1 -1
  21. package/src/blocks/Product.astro +51 -68
  22. package/src/blocks/Products.astro +114 -5
  23. package/src/blocks/Reviews.astro +0 -1
  24. package/src/blocks/_Contact.astro +112 -0
  25. package/src/components/Avatar.astro +28 -9
  26. package/src/components/Avatars.astro +36 -0
  27. package/src/components/Badge.astro +73 -26
  28. package/src/components/Badges.astro +16 -23
  29. package/src/components/Breadcrumb.astro +58 -0
  30. package/src/components/Button.astro +56 -112
  31. package/src/components/Buttons.astro +23 -13
  32. package/src/components/Card.astro +129 -115
  33. package/src/components/Cards.astro +33 -35
  34. package/src/components/Carousel.astro +106 -0
  35. package/src/components/Cart.astro +1 -1
  36. package/src/components/CartForm.astro +9 -9
  37. package/src/components/CartList.astro +11 -28
  38. package/src/components/CartSummary.astro +11 -13
  39. package/src/components/Channel.astro +40 -22
  40. package/src/components/Channels.astro +20 -6
  41. package/src/components/Checkbox.astro +52 -27
  42. package/src/components/Code.astro +52 -0
  43. package/src/components/Dialog.astro +2 -2
  44. package/src/components/Drawer.astro +34 -64
  45. package/src/components/Element.astro +16 -8
  46. package/src/components/Form.astro +14 -13
  47. package/src/components/Gallery.astro +172 -0
  48. package/src/components/Head.astro +52 -1
  49. package/src/components/Header.astro +73 -83
  50. package/src/components/Heading.astro +74 -30
  51. package/src/components/Icon.astro +25 -30
  52. package/src/components/Image.astro +23 -38
  53. package/src/components/Input.astro +59 -53
  54. package/src/components/Label.astro +20 -15
  55. package/src/components/Lead.astro +46 -0
  56. package/src/components/Link.astro +51 -26
  57. package/src/components/Links.astro +42 -0
  58. package/src/components/List.astro +41 -16
  59. package/src/components/LocaleSwitcher.astro +2 -2
  60. package/src/components/Logo.astro +45 -0
  61. package/src/components/Menu.astro +21 -17
  62. package/src/components/Paragraph.astro +38 -0
  63. package/src/components/Price.astro +1 -1
  64. package/src/components/Prose.astro +169 -0
  65. package/src/components/Rating.astro +50 -38
  66. package/src/components/Search.astro +1 -1
  67. package/src/components/Section.astro +196 -158
  68. package/src/components/Select.astro +44 -55
  69. package/src/components/Sidebar.astro +31 -38
  70. package/src/components/Social.astro +3 -8
  71. package/src/components/Socials.astro +9 -5
  72. package/src/components/Subheader.astro +59 -0
  73. package/src/components/Switch.astro +72 -29
  74. package/src/components/Table.astro +1 -1
  75. package/src/components/Tagline.astro +40 -12
  76. package/src/components/Text.astro +4 -4
  77. package/src/components/Textarea.astro +40 -50
  78. package/src/components/Themer.astro +76 -0
  79. package/src/components/Toc.astro +24 -32
  80. package/src/components/Writeup.astro +26 -8
  81. package/src/components/docs/PropsTable.astro +38 -264
  82. package/src/components/experimental/Window.astro +5 -57
  83. package/src/components/sections.astro +1 -1
  84. package/src/content/pages/blocks/_categories.mdx +1 -1
  85. package/src/content/pages/blocks/_footer.mdx +1 -1
  86. package/src/content/pages/blocks/_header.mdx +1 -3
  87. package/src/content/pages/blocks/_jobs.mdx +1 -1
  88. package/src/content/pages/blocks/_prices.mdx +1 -1
  89. package/src/content/pages/blocks/_product.mdx +1 -1
  90. package/src/content/pages/blocks/_products.mdx +1 -1
  91. package/src/content/pages/blocks/_stats.mdx +1 -1
  92. package/src/content/pages/blocks/banner.mdx +1 -1
  93. package/src/content/pages/blocks/colleagues.mdx +1 -2
  94. package/src/content/pages/blocks/contact.mdx +1 -1
  95. package/src/content/pages/blocks/content.mdx +1 -5
  96. package/src/content/pages/blocks/cta.mdx +1 -9
  97. package/src/content/pages/blocks/features.mdx +1 -4
  98. package/src/content/pages/blocks/hero.mdx +1 -4
  99. package/src/content/pages/blocks/intro.mdx +1 -4
  100. package/src/content/pages/blocks/posts.mdx +1 -1
  101. package/src/content/pages/blocks/reviews.mdx +1 -2
  102. package/src/content/pages/docs/_internationalization.mdx +55 -0
  103. package/src/content/pages/docs/_using-blocks.mdx +33 -0
  104. package/src/content/pages/docs/_using-presets.mdx +49 -0
  105. package/src/content/pages/docs/blocks.mdx +33 -0
  106. package/src/content/pages/docs/collections/images.mdx +100 -0
  107. package/src/content/pages/docs/collections/pages.mdx +119 -0
  108. package/src/content/pages/docs/collections/presets.mdx +60 -0
  109. package/src/content/pages/docs/collections.mdx +42 -0
  110. package/src/content/pages/{base/card.mdx → docs/components/_card.mdx} +1 -3
  111. package/src/content/pages/{base → docs/components}/_switch.mdx +2 -2
  112. package/src/content/pages/{typography → docs/components}/_tagline.mdx +2 -2
  113. package/src/content/pages/docs/components/_toggle.mdx +31 -0
  114. package/src/content/pages/docs/components/avatar.mdx +35 -0
  115. package/src/content/pages/{base → docs/components}/badge.mdx +27 -8
  116. package/src/content/pages/docs/components/badges.mdx +47 -0
  117. package/src/content/pages/{base → docs/components}/button.mdx +29 -10
  118. package/src/content/pages/docs/components/buttons.mdx +52 -0
  119. package/src/content/pages/docs/components/channel.mdx +92 -0
  120. package/src/content/pages/docs/components/channels.mdx +90 -0
  121. package/src/content/pages/{base → docs/components}/checkbox.mdx +10 -17
  122. package/src/content/pages/docs/components/code.mdx +46 -0
  123. package/src/content/pages/docs/components/heading.mdx +60 -0
  124. package/src/content/pages/docs/components/icon.mdx +49 -0
  125. package/src/content/pages/docs/components/image.mdx +26 -0
  126. package/src/content/pages/docs/components/input.mdx +41 -0
  127. package/src/content/pages/{typography → docs/components}/label.mdx +8 -4
  128. package/src/content/pages/docs/components/lead.mdx +51 -0
  129. package/src/content/pages/{typography → docs/components}/link.mdx +23 -8
  130. package/src/content/pages/docs/components/links.mdx +100 -0
  131. package/src/content/pages/docs/components/list.mdx +45 -0
  132. package/src/content/pages/docs/components/logo.mdx +37 -0
  133. package/src/content/pages/docs/components/menu.mdx +90 -0
  134. package/src/content/pages/docs/components/paragraph.mdx +51 -0
  135. package/src/content/pages/docs/components/prose.mdx +37 -0
  136. package/src/content/pages/docs/components/rating.mdx +77 -0
  137. package/src/content/pages/{base → docs/components}/section.mdx +1 -1
  138. package/src/content/pages/{base → docs/components}/select.mdx +0 -9
  139. package/src/content/pages/docs/components/social.mdx +95 -0
  140. package/src/content/pages/docs/components/socials.mdx +103 -0
  141. package/src/content/pages/docs/components/switch.mdx +35 -0
  142. package/src/content/pages/{base → docs/components}/table.mdx +0 -2
  143. package/src/content/pages/docs/components/tagline.mdx +47 -0
  144. package/src/content/pages/docs/components/textarea.mdx +35 -0
  145. package/src/content/pages/docs/components/themer.mdx +50 -0
  146. package/src/content/pages/docs/components.mdx +40 -0
  147. package/src/content/pages/docs/customization.mdx +151 -0
  148. package/src/content/pages/docs/frameworks.mdx +29 -0
  149. package/src/content/pages/docs/generating-pages.mdx +129 -0
  150. package/src/content/pages/docs/index.mdx +23 -0
  151. package/src/content/pages/docs/installation.mdx +50 -0
  152. package/src/content/pages/docs/layouts.mdx +33 -0
  153. package/src/content/pages/index.mdx +11 -9
  154. package/src/content/pages/showcase.mdx +4 -2
  155. package/src/content/presets/base.yml +80 -63
  156. package/src/content/presets/docs.yml +2 -2
  157. package/src/css/color.css +0 -10
  158. package/src/css/custom.css +10 -12
  159. package/src/css/size.css +2 -11
  160. package/src/css/theme.css +93 -0
  161. package/src/images/logo-1.svg +11 -0
  162. package/src/images/logo-2.svg +13 -0
  163. package/src/images/logo-basic.svg +10 -0
  164. package/src/images/logo-simple.svg +13 -0
  165. package/src/images/logo-thin.svg +15 -0
  166. package/src/images/logo.svg +14 -0
  167. package/src/images/logofat.svg +11 -0
  168. package/src/integration/index.ts +71 -144
  169. package/src/layouts/CategoryLayout.astro +135 -0
  170. package/src/layouts/Layout.astro +62 -117
  171. package/src/layouts/PageLayout.astro +26 -0
  172. package/src/layouts/PostLayout.astro +13 -8
  173. package/src/layouts/ProductLayout.astro +94 -10
  174. package/src/pages/[...page].astro +14 -22
  175. package/src/pages/test.astro +20 -0
  176. package/src/schemas/components/button.ts +21 -13
  177. package/src/schemas/components/card.ts +36 -18
  178. package/src/schemas/components/footer.ts +2 -10
  179. package/src/schemas/components/global.ts +16 -0
  180. package/src/schemas/components/header.ts +8 -0
  181. package/src/schemas/components/image.ts +8 -3
  182. package/src/schemas/components/link.ts +16 -0
  183. package/src/schemas/components/links.ts +4 -0
  184. package/src/schemas/components/menu.ts +2 -0
  185. package/src/schemas/components/sidebar.ts +2 -2
  186. package/src/schemas/components/subheader.ts +9 -0
  187. package/src/schemas/components/themer.ts +3 -0
  188. package/src/schemas/pageSchema.ts +14 -21
  189. package/src/utils/cart.ts +1 -10
  190. package/src/utils/getDeepReferenceChildren.ts +14 -0
  191. package/src/utils/getReferenceChildren.ts +1 -1
  192. package/src/utils/setTheme.ts +18 -0
  193. package/src/utils/slugify.ts +6 -0
  194. package/tailwind.config.ts +67 -0
  195. package/src/blocks/Article.astro +0 -40
  196. package/src/components/Footer.astro +0 -193
  197. package/src/components/ThemeSelect.astro +0 -41
  198. package/src/components/experimental/Form.astro +0 -53
  199. package/src/components/experimental/Gallery.astro +0 -104
  200. package/src/components/experimental/Logo.astro +0 -38
  201. package/src/components/experimental/Prose.astro +0 -192
  202. package/src/content/pages/base/icon.mdx +0 -55
  203. package/src/content/pages/base/image.mdx +0 -42
  204. package/src/content/pages/base/input.mdx +0 -56
  205. package/src/content/pages/base/rating.mdx +0 -55
  206. package/src/content/pages/base/textarea.mdx +0 -58
  207. package/src/content/pages/base/theme-select.mdx +0 -15
  208. package/src/content/pages/layouts/_layout.mdx +0 -14
  209. package/src/content/pages/layouts/docslayout.mdx +0 -14
  210. package/src/content/pages/overview/components.mdx +0 -75
  211. package/src/content/pages/overview/content-collections.mdx +0 -139
  212. package/src/content/pages/overview/frameworks.mdx +0 -198
  213. package/src/content/pages/overview/installation.mdx +0 -53
  214. package/src/content/pages/overview/introduction.mdx +0 -30
  215. package/src/content/pages/overview/theming.mdx +0 -69
  216. package/src/content/pages/schemas/page.mdx +0 -17
  217. package/src/content/pages/schemas/preset.mdx +0 -9
  218. package/src/content/pages/showcase/record.md +0 -3
  219. package/src/content/pages/typography/heading.mdx +0 -73
  220. package/src/content/pages/typography/list.mdx +0 -51
  221. package/src/content/pages/typography/text.mdx +0 -61
  222. package/src/content/presets/blocks.yml +0 -1
  223. package/src/css/space.css +0 -77
  224. package/src/css/styles.css +0 -0
  225. package/src/images/avatar-1.yml +0 -1
  226. package/src/integration/generate-colors.ts +0 -639
  227. package/src/integration/tailwind-plugin.ts +0 -80
  228. package/src/integration/unocss-preset.ts +0 -84
  229. package/src/layouts/BlockLayout.astro +0 -19
  230. package/src/layouts/ContactLayout.astro +0 -21
  231. package/src/layouts/DocsLayout.astro +0 -73
  232. package/src/layouts/OverviewLayout.astro +0 -42
  233. /package/src/content/pages/{base → docs/components}/_dialog.mdx +0 -0
  234. /package/src/content/pages/{base → docs/components}/_drawer.mdx +0 -0
  235. /package/src/content/pages/{base → docs/components}/_localeswitcher.mdx +0 -0
  236. /package/src/schemas/utils/{parents.ts → categories.ts} +0 -0
@@ -0,0 +1,129 @@
1
+ ---
2
+ presets: [docs]
3
+ title: Generating Pages
4
+ ---
5
+
6
+ import Link from 'fulldev-ui/components/Link.astro'
7
+
8
+ # Generating Pages
9
+
10
+ With our integration, you can generate pages using content files with type-safe frontmatter, minimal configuration, and an easy-to-understand project structure.
11
+
12
+ ## Starter Template
13
+
14
+ This is the recommended way to get started with our content layer integration. We've created a <Link href="https://github.com/fulldotdev/starter/tree/main">starter template</Link> with examples of everything you need to get started. This instantly gives you access to generating pages, using presets, internationalization and more without any additional setup.
15
+
16
+ ```bash
17
+ pnpm create astro@latest -- --template fulldotdev/starter
18
+ ```
19
+
20
+ ## Manual Setup
21
+
22
+ To get started with the manual setup, you need to install the <Link href="/overview/installation/">integration</Link> and add `injectRoutes: true` to your `astro.config.ts` file, see <Link href="#type-safe-frontmatter">frontmatter</Link> below for more information on how this generates a site using content files.
23
+
24
+ ```ts
25
+ import { defineConfig } from 'astro/config'
26
+ import fulldev from 'fulldev-ui/integration'
27
+
28
+ // https://astro.build/config
29
+ export default defineConfig({
30
+ integrations: [
31
+ fulldev({
32
+ // other options
33
+ injectRoutes: true,
34
+ }),
35
+ ],
36
+ })
37
+ ```
38
+
39
+ `injectRoutes` reads your content files and generates routes for them in the generated site. Supporting file types like markdown and MDX.
40
+
41
+ ## Project Structure
42
+
43
+ To start with, your project structure should look like this:
44
+
45
+ ```md
46
+ .
47
+ ├── src/
48
+ │ ├── blocks/
49
+ │ │ └── ...
50
+ │ ├── components/
51
+ │ │ └── ...
52
+ │ ├── layouts/
53
+ │ │ └── ...
54
+ │ ├── images/
55
+ │ │ └── ...
56
+ │ ├── content/
57
+ │ │ ├── pages/
58
+ │ │ │ └── ...
59
+ │ │ ├── presets/
60
+ │ │ │ ├── base.yml
61
+ │ │ │ └── ...
62
+ │ │ └── ...
63
+ │ ├── css/
64
+ │ │ ├── custom.css
65
+ │ │ └── ...
66
+ ├── public/
67
+ │ └── ...
68
+ └──
69
+ ```
70
+
71
+ ## Creating a page
72
+
73
+ Creating a page is as simple as creating a new file in the **src/content/pages** directory.
74
+
75
+ For example,
76
+
77
+ - **src/content/pages/index.mdx** will be the root of your site.
78
+ - **src/content/pages/about.mdx** will appear at /about.
79
+ - **src/content/pages/team/first-name.mdx** will appear at /team/first-name.
80
+
81
+ ### Using presets
82
+
83
+ Presets are a way to apply a set of configurations to a page. This can be apply navigation settings, seo and more.
84
+
85
+ To learn more about presets, see the <Link href="/guides/using-presets/">using presets</Link> guide.
86
+
87
+ ### Using layouts
88
+
89
+ Layouts are a way to apply styles to a page. Used for having multiple layouts like a blog layout, documentation layout, etc.
90
+
91
+ To learn more about layouts, see the <Link href="/guides/using-layouts/">using layouts</Link> guide.
92
+
93
+ ### Frontmatter
94
+
95
+ Each file has a few frontmatter objects that are important to know about. The frontmatter is fully type-safe, so you will know if you use an unavailable option or mistype something. SEO has priority over title and description, however title and description are used in multiple places like cards so they remain important.
96
+
97
+ ```yml
98
+ ---
99
+ preset: [docs]
100
+ component: DocsLayout
101
+
102
+ seo:
103
+ title: Page Title
104
+ description: This is my page description
105
+ image: /image.jpg # Open Graph Image
106
+
107
+ # Information on the page, this is used in places like card, sidebar, etc.
108
+ title: Page Title
109
+ description: This is my page description
110
+
111
+ sections: # Here you generate the page by adding a component and passing props
112
+ - component: Hero
113
+ heading: Page Title
114
+ text: This is my page description
115
+ buttons:
116
+ - text: Button
117
+ color: brand
118
+ href: /
119
+ - text: Button
120
+ href: /
121
+ ---
122
+ # This is the prose, you can use markdown here, typically used for blogs, docs, etc.
123
+ ```
124
+
125
+ For all objects avaliable in the frontmatter, see the <Link href="https://ui.full.dev/content-collections/pages/">pages collection</Link>.
126
+
127
+ ## Using custom components
128
+
129
+ You can use custom components simply creating them in the **src/components**, **src/blocks** or **src/layouts** directory. You can then use those in the component property of the frontmatter. If you want to override a component from the library, see the [overriding components](/guides/overriding-components/) guide.
@@ -0,0 +1,23 @@
1
+ ---
2
+ presets: [docs]
3
+ title: Introduction
4
+ ---
5
+
6
+ # Introduction
7
+
8
+ Everything you need to rapidly build content-driven websites. Components, blocks, layouts and complete page generation.
9
+
10
+ ## Why we built it
11
+
12
+ After repeatedly encountering the same challenges in [our company's](https://full.dev) client projects, we decided to build this library. After successfully using it in production websites, we decided to open-source it to help others facing similar problems.
13
+
14
+ ## What makes it special
15
+
16
+ - Built entirely with `.astro` components
17
+ - Outputs vanilla CSS, html and minimal JavaScript
18
+ - Compatible with all JS frameworks
19
+ - Compatible with Tailwind and Shadcn/ui
20
+ - Integrates with [content collections](https://docs.astro.build/en/guides/content-collections/)
21
+ - Blocks included, like Hero, CTA and Features
22
+ - Automatically generated pages
23
+ - And more...
@@ -0,0 +1,50 @@
1
+ ---
2
+ presets: [docs]
3
+ title: Installation
4
+ ---
5
+
6
+ import Link from 'fulldev-ui/components/Link.astro'
7
+
8
+ # Installation
9
+
10
+ How to install dependencies and setup the integration.
11
+
12
+ ## Add to existing project
13
+
14
+ If you don't have an existing project, you can create a new one using the [starter template](https://github.com/fulldotdev/starter).
15
+
16
+ ### Automatic setup
17
+
18
+ Run the following command to automatically install the dependencies and add the integration.
19
+
20
+ ```bash
21
+ npx astro add fulldev-ui
22
+ ```
23
+
24
+ ### Manual setup
25
+
26
+ Run the following command to add fulldev-ui to your dependencies.
27
+
28
+ ```bash
29
+ npm i fulldev-ui
30
+ ```
31
+
32
+ Add the integration to your `astro.config.ts` file.
33
+
34
+ ```ts
35
+ // astro.config.ts
36
+ import { defineConfig } from 'astro/config'
37
+ import fulldev from 'fulldev-ui/integration'
38
+
39
+ export default defineConfig({
40
+ integrations: [fulldev()],
41
+ })
42
+ ```
43
+
44
+ ## Create new project
45
+
46
+ Run the following command to setup a new project from the [starter template](https://github.com/fulldotdev/starter).
47
+
48
+ ```bash
49
+ npx astro create --template fulldev-ui
50
+ ```
@@ -0,0 +1,33 @@
1
+ ---
2
+ presets: [docs]
3
+ title: Layouts
4
+ ---
5
+
6
+ import Link from 'fulldev-ui/components/Link.astro'
7
+
8
+ # Layouts
9
+
10
+ Layouts are astro components that can be used to set the default styles for a page. They are located in the **src/content/layouts** directory.
11
+
12
+ ## Creating a layout
13
+
14
+ Beside the layouts that are included in the library you can also create your own by adding a new astro component to the **src/content/layouts** directory. You can also override the existing layouts, see the <Link href="/guides/overriding-components/">overriding components</Link> guide for more information.
15
+
16
+ Currently there are 6 layouts included in the library:
17
+
18
+ - `Layout`
19
+ - `DocsLayout`
20
+ - `PostLayout`
21
+ - `ProductLayout`
22
+ - `BlockLayout`
23
+ - `ContactLayout`
24
+
25
+ ## Applying a layout
26
+
27
+ To apply a preset to a page, you can add the `component` property to the frontmatter of a page.
28
+
29
+ ```md
30
+ ---
31
+ component: DocsLayout
32
+ ---
33
+ ```
@@ -11,22 +11,24 @@ title: Home
11
11
  sections:
12
12
  - component: Hero
13
13
  badge:
14
- text: We added layouts, now you can build entire sites
14
+ text: 'Introducing v0.5: page building & generation'
15
15
  href: /overview/installation/
16
- heading: The Astro UI library to build content sites
17
- text: Make websites with prebuilt components, blocks and layouts
16
+ heading: Build complete websites with this Astro UI library
17
+ # heading: The Astro UI library to build complete websites
18
+ lead: 'Everything you need to rapidly build content-driven websites. Components, blocks, layouts and complete page generation.'
18
19
  buttons:
19
20
  - text: Get Started
20
- href: /overview/installation/
21
+ href: /docs/
21
22
  - text: GitHub
22
23
  href: https://github.com/fulldotdev/ui
23
24
  icon: brand-github
24
- - component: Article
25
+ image: block-code.png
26
+
25
27
  - component: Content
26
28
  color: brand
27
29
  label: Blocks
28
30
  heading: Use pre-built blocks with just props
29
- text: we created a great gallery of blocks to build content sites with a modern look and feel, all of our blocks are build with components from the library to achieve a consistent look.
31
+ paragraph: We created a great gallery of blocks to build content sites with a modern look and feel, all of our blocks are build with components from the library to achieve a consistent look.
30
32
  image: block-code.png
31
33
  buttons:
32
34
  - href: /blocks
@@ -37,11 +39,11 @@ sections:
37
39
  color: brand
38
40
  label: Components
39
41
  heading: Or build your own, with easy to use components
40
- text: our rich set of components make it easy to build your own blocks with great customizability through props and global theming.
42
+ paragraph: Our rich set of components make it easy to build your own blocks with great customizability through props and global theming.
41
43
  image: component-code.png
42
44
  reverse: odd
43
45
  buttons:
44
- - href: /base/badge
46
+ - href: /components/badge
45
47
  icon: code
46
48
  text: View components
47
49
 
@@ -49,7 +51,7 @@ sections:
49
51
  size: lg
50
52
  variant: primary
51
53
  heading: Build content websites in a fraction of time
52
- text: A library of components and blocks to build content sites, fast.
54
+ lead: A library of components and blocks to build content sites, fast.
53
55
  buttons:
54
56
  - text: Get Started
55
57
  href: /overview/installation
@@ -8,7 +8,10 @@ import Cards from 'fulldev-ui/components/Cards.astro'
8
8
  import { getCollection } from 'astro:content'
9
9
 
10
10
  export const projects = (
11
- await getCollection('pages', ({ slug }) => slug.startsWith('showcase'))
11
+ await getCollection(
12
+ 'pages',
13
+ ({ slug }) => slug.startsWith('showcase') && slug !== 'showcase'
14
+ )
12
15
  ).map((p) => p.data)
13
16
 
14
17
  # Showcase
@@ -16,7 +19,6 @@ export const projects = (
16
19
  Projects that are built with Fulldev UI.
17
20
 
18
21
  <Card
19
- color="brand"
20
22
  size="sm"
21
23
  style={{ marginTop: 'var(--space-6)', marginBottom: 'var(--space-7)' }}
22
24
  heading="Your project in this showcase?"
@@ -1,4 +1,4 @@
1
- theme: dark
1
+ theme: system
2
2
 
3
3
  seo:
4
4
  image: /images/og-image.png
@@ -10,74 +10,91 @@ code:
10
10
  posthog.init('phc_mVacbe8Xydu0UZlh4bNw5EGisvzyRcpqXEEuEEp5lOY',{api_host:'https://eu.i.posthog.com', person_profiles: 'identified_only' // or 'always' to create profiles for anonymous users as well
11
11
  })
12
12
  </script>
13
+
13
14
  navigation:
15
+ themer: true
14
16
  header: true
15
17
  company: Fulldev UI
16
- buttons:
18
+ logo: favicon.svg
19
+ links:
17
20
  - text: Docs
18
- href: /overview/introduction
21
+ href: /docs/
19
22
  - text: Components
20
- href: /typography/heading
23
+ href: /docs/components/badge/
21
24
  - text: Blocks
22
- href: /blocks/banner
25
+ href: /docs/blocks/banner/
23
26
  - showcase
24
- - href: https://github.com/fulldotdev/ui
25
- target: _blank
26
- icon: brand-github
27
- variant: secondary
28
- - href: https://discord.gg/vXZqMbadm8
29
- target: _blank
30
- icon: brand-discord
31
- variant: secondary
27
+
28
+ socials:
29
+ - https://github.com/fulldotdev/ui
30
+ - https://discord.gg/vXZqMbadm8
31
+
32
32
  menu:
33
33
  - heading: Get Started
34
- buttons:
35
- - overview/introduction
36
- - overview/installation
37
- - overview/theming
38
- - overview/frameworks
39
- - overview/components
40
- - overview/content-collections
41
- - heading: Typography
42
- buttons:
43
- - typography/heading
44
- - typography/label
45
- - typography/link
46
- - typography/list
47
- - typography/text
48
- - heading: Base
49
- buttons:
50
- - base/badge
51
- - base/button
52
- - base/card
53
- - base/checkbox
54
- - base/icon
55
- - base/input
56
- - base/rating
57
- - base/section
58
- - base/select
59
- - base/table
60
- - base/textarea
61
- - base/theme-select
62
- - base/image
63
- - heading: Blocks
64
- buttons:
65
- - blocks/banner
66
- - blocks/colleagues
67
- - blocks/contact
68
- - blocks/content
69
- - blocks/cta
70
- - blocks/features
71
- - blocks/hero
72
- - blocks/intro
73
- - blocks/posts
74
- - blocks/reviews
75
- - heading: Schemas
76
- buttons:
77
- - schemas/page
78
- - schemas/preset
79
- - heading: More
80
- buttons:
81
- - showcase
82
- - text: Changelog
83
- href: https://github.com/fulldotdev/ui/releases
34
+ links:
35
+ - docs
36
+ - docs/installation
37
+ - docs/customization
38
+ - docs/frameworks
39
+ - docs/components
40
+ - docs/collections
41
+ - heading: Collections
42
+ links:
43
+ - docs/collections/pages
44
+ - docs/collections/presets
45
+ - docs/collections/images
46
+ - heading: Components
47
+ links:
48
+ - docs/components/avatar
49
+ - docs/components/badge
50
+ - docs/components/badges
51
+ - docs/components/button
52
+ - docs/components/buttons
53
+ # - docs/components/card
54
+ # - docs/components/cards
55
+ # - docs/components/cart
56
+ # - docs/components/cart-form
57
+ # - docs/components/cart-list
58
+ # - docs/components/cart-summary
59
+ - docs/components/channel
60
+ - docs/components/channels
61
+ - docs/components/checkbox
62
+ - docs/components/code
63
+ # - docs/components/dialog
64
+ # - docs/components/drawer
65
+ # - docs/components/element
66
+ # - docs/components/footer
67
+ # - docs/components/form
68
+ # - docs/components/head
69
+ # - docs/components/header
70
+ - docs/components/heading
71
+ - docs/components/icon
72
+ - docs/components/image
73
+ - docs/components/input
74
+ - docs/components/label
75
+ - docs/components/lead
76
+ - docs/components/link
77
+ - docs/components/links
78
+ - docs/components/list
79
+ # - docs/components/locale-switcher
80
+ - docs/components/logo
81
+ - docs/components/menu
82
+ - docs/components/paragraph
83
+ # - docs/components/price
84
+ - docs/components/prose
85
+ - docs/components/rating
86
+ # - docs/components/search
87
+ # - docs/components/section
88
+ # - docs/components/sections
89
+ - docs/components/select
90
+ # - docs/components/sidebar
91
+ - docs/components/social
92
+ - docs/components/socials
93
+ - docs/components/switch
94
+ # - docs/components/table
95
+ - docs/components/tagline
96
+ # - docs/components/text
97
+ - docs/components/textarea
98
+ - docs/components/themer
99
+ # - docs/components/toc
100
+ # - docs/components/writeup
@@ -1,6 +1,6 @@
1
- component: DocsLayout
2
-
3
1
  navigation:
4
2
  sidebar: true
5
3
  header: false
6
4
  toc: 'On this page'
5
+ next: true
6
+ prev: true
package/src/css/color.css CHANGED
@@ -1,13 +1,3 @@
1
- .theme-light,
2
- .theme-light * {
3
- color-scheme: light;
4
- }
5
-
6
- .theme-dark,
7
- .theme-dark * {
8
- color-scheme: dark;
9
- }
10
-
11
1
  :where(:root),
12
2
  :where(.theme-light),
13
3
  :where(.theme-dark),
@@ -1,22 +1,20 @@
1
1
  @import url(https://fonts.bunny.net/css?family=inter:100,200,300,400,500,600,700,800,900);
2
2
 
3
- * {
4
- font-family: 'Inter', sans-serif;
5
- }
6
-
7
3
  mark {
8
4
  background-color: var(--brand-12) !important;
9
5
  color: var(--brand-1) !important;
10
6
  }
11
7
 
12
- .astro-code {
13
- border: 1px solid var(--base-6);
14
- border-radius: var(--radius-2);
15
- background-color: #191919 !important;
16
- padding: var(--space-5);
8
+ .rounded-full {
9
+ border-radius: 999px !important;
10
+ }
11
+
12
+ .hero .heading,
13
+ .hero .lead {
14
+ max-width: 680px;
15
+ text-wrap: balance;
17
16
  }
18
17
 
19
- .header,
20
- .panel {
21
- background-color: var(--color-background);
18
+ .logo .image {
19
+ border-radius: 2px;
22
20
  }
package/src/css/size.css CHANGED
@@ -1,4 +1,4 @@
1
- :root {
1
+ /* :root {
2
2
  --space-sm-1: 4px;
3
3
  --space-sm-2: 6px;
4
4
  --space-sm-3: 8px;
@@ -128,13 +128,4 @@
128
128
  --text-7: var(--text-lg-7);
129
129
  --text-8: var(--text-lg-8);
130
130
  }
131
-
132
- :root {
133
- --spacer: var(--space-7);
134
- --screen: 100vw;
135
- --gutter: max(24px, calc((100% - var(--screen)) / 2));
136
- }
137
-
138
- * {
139
- --gutter: max(24px, calc((100% - var(--screen)) / 2));
140
- }
131
+ */
@@ -0,0 +1,93 @@
1
+ /* :root {
2
+ --radius: 0.5rem;
3
+
4
+ --background: 33.3 30% 97.5%;
5
+ --foreground: 33.3 10% 10.5%;
6
+
7
+ --primary: 20 100% 50%;
8
+ --primary-foreground: 0 0% 100%;
9
+ --primary-hover: var(--primary) / 85%;
10
+
11
+ --secondary: 20 10% 92%;
12
+ --secondary-hover: var(--secondary) / 75%;
13
+ --secondary-foreground: var(--foreground);
14
+
15
+ --accent: var(--secondary-hover);
16
+ --accent-foreground: var(--secondary-foreground);
17
+
18
+ --muted: var(--accent);
19
+ --muted-foreground: var(--foreground) / 75%;
20
+
21
+ --card: var(--secondary) / 40%;
22
+ --card-foreground: var(--foreground);
23
+
24
+ --border: var(--foreground) / 8%;
25
+ --input: var(--foreground) / 26%;
26
+ --ring: var(--foreground);
27
+ }
28
+
29
+ .dark {
30
+ --foreground: 0 0% 100%;
31
+ --background: 20 40% 3%;
32
+ --primary: 20 30% 97%;
33
+ --primary-foreground: 20 100% 0%;
34
+ --secondary: 20 10% 10%;
35
+ --secondary-foreground: 20 30% 97%;
36
+ } */
37
+
38
+ @layer base {
39
+ :root {
40
+ --background: 0 0% 100%;
41
+ --foreground: 20 14.3% 4.1%;
42
+ --card: 0 0% 100%;
43
+ --card-foreground: 20 14.3% 4.1%;
44
+ --popover: 0 0% 100%;
45
+ --popover-foreground: 20 14.3% 4.1%;
46
+ --primary: 24 9.8% 10%;
47
+ --primary-foreground: 60 9.1% 97.8%;
48
+ --secondary: 60 4.8% 95.9%;
49
+ --secondary-foreground: 24 9.8% 10%;
50
+ --muted: 60 4.8% 95.9%;
51
+ --muted-foreground: 25 5.3% 44.7%;
52
+ --accent: 60 4.8% 95.9%;
53
+ --accent-foreground: 24 9.8% 10%;
54
+ --destructive: 0 84.2% 60.2%;
55
+ --destructive-foreground: 60 9.1% 97.8%;
56
+ --border: 20 5.9% 90%;
57
+ --input: 20 5.9% 90%;
58
+ --ring: 20 14.3% 4.1%;
59
+ --radius: 0.5rem;
60
+ --chart-1: 12 76% 61%;
61
+ --chart-2: 173 58% 39%;
62
+ --chart-3: 197 37% 24%;
63
+ --chart-4: 43 74% 66%;
64
+ --chart-5: 27 87% 67%;
65
+ }
66
+
67
+ .dark {
68
+ --background: 20 14.3% 4.1%;
69
+ --foreground: 60 9.1% 97.8%;
70
+ --card: 20 14.3% 4.1%;
71
+ --card-foreground: 60 9.1% 97.8%;
72
+ --popover: 20 14.3% 4.1%;
73
+ --popover-foreground: 60 9.1% 97.8%;
74
+ --primary: 60 9.1% 97.8%;
75
+ --primary-foreground: 24 9.8% 10%;
76
+ --secondary: 12 6.5% 15.1%;
77
+ --secondary-foreground: 60 9.1% 97.8%;
78
+ --muted: 12 6.5% 15.1%;
79
+ --muted-foreground: 24 5.4% 63.9%;
80
+ --accent: 12 6.5% 15.1%;
81
+ --accent-foreground: 60 9.1% 97.8%;
82
+ --destructive: 0 62.8% 30.6%;
83
+ --destructive-foreground: 60 9.1% 97.8%;
84
+ --border: 12 6.5% 15.1%;
85
+ --input: 12 6.5% 15.1%;
86
+ --ring: 24 5.7% 82.9%;
87
+ --chart-1: 220 70% 50%;
88
+ --chart-2: 160 60% 45%;
89
+ --chart-3: 30 80% 55%;
90
+ --chart-4: 280 65% 60%;
91
+ --chart-5: 340 75% 55%;
92
+ }
93
+ }
@@ -0,0 +1,11 @@
1
+ <svg width="694" height="671" viewBox="0 0 694 671" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M490.133 0H693.066L660.933 117.5H458L490.133 0Z" fill="#FF5500"/>
3
+ <path d="M286.133 304H489.066L456.933 421.5H254L286.133 304Z" fill="#FF5500"/>
4
+ <path d="M297.133 0H500.066L467.933 117.5H265L297.133 0Z" fill="#FF5500"/>
5
+ <path d="M141.133 304H344.066L311.933 421.5H109L141.133 304Z" fill="#FF5500"/>
6
+ <path d="M110.133 418L244.633 418L212.5 535.5H78L110.133 418Z" fill="#FF5500"/>
7
+ <path d="M89.1329 494L223.633 494L191.5 611.5H57L89.1329 494Z" fill="#FF5500"/>
8
+ <path d="M72.94 553L206.633 553L174.693 670.5H41L72.94 553Z" fill="#FF5500"/>
9
+ <path d="M104.133 0H307.066L274.933 117.5H72L104.133 0Z" fill="#FF5500"/>
10
+ <path d="M32.1329 0H235.066L202.933 117.5H0L32.1329 0Z" fill="#FF5500"/>
11
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg width="694" height="739" viewBox="0 0 694 739" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M490.133 0H693.066L660.933 117.5H458L490.133 0Z" fill="#FF5500"/>
3
+ <path d="M286.133 304H489.066L456.933 421.5H254L286.133 304Z" fill="#FF5500"/>
4
+ <path d="M354.133 304H557.066L524.933 421.5H322L354.133 304Z" fill="#FF5500"/>
5
+ <path d="M297.133 0H500.066L467.933 117.5H265L297.133 0Z" fill="#FF5500"/>
6
+ <path d="M141.133 304H344.066L311.933 421.5H109L141.133 304Z" fill="#FF5500"/>
7
+ <path d="M110.133 418L244.633 418L212.5 535.5H78L110.133 418Z" fill="#FF5500"/>
8
+ <path d="M89.1329 494L223.633 494L191.5 611.5H57L89.1329 494Z" fill="#FF5500"/>
9
+ <path d="M72.94 553L206.633 553L174.693 670.5H41L72.94 553Z" fill="#FF5500"/>
10
+ <path d="M54.94 621L188.633 621L156.693 738.5H23L54.94 621Z" fill="#FF5500"/>
11
+ <path d="M104.133 0H307.066L274.933 117.5H72L104.133 0Z" fill="#FF5500"/>
12
+ <path d="M32.1329 0H235.066L202.933 117.5H0L32.1329 0Z" fill="#FF5500"/>
13
+ </svg>