astro-component-kit 0.4.0 → 0.4.1
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/README.md +105 -27
- package/package.json +16 -3
- package/src/components/index.ts +2 -0
- package/src/components/lib/Galaxy3D.astro +249 -137
- package/src/components/lib/app/AppSidebar.astro +249 -0
- package/src/components/lib/app/AppTopbar.astro +284 -0
- package/src/components/lib/app/ArrivalsBoard.astro +176 -0
- package/src/components/lib/app/AuthCard.astro +213 -0
- package/src/components/lib/app/DataTable.astro +346 -0
- package/src/components/lib/app/GuestProfileCard.astro +133 -0
- package/src/components/lib/app/HousekeepingBoard.astro +189 -0
- package/src/components/lib/app/PageHeader.astro +157 -0
- package/src/components/lib/app/PlanUsageCard.astro +112 -0
- package/src/components/lib/app/RoomRack.astro +207 -0
- package/src/components/lib/app/SettingsSection.astro +96 -0
- package/src/components/lib/app/SwitchRow.astro +71 -0
- package/src/components/lib/app/TeamMembers.astro +190 -0
- package/src/components/lib/app/app-icons.ts +52 -0
- package/src/components/lib/app/index.ts +19 -0
- package/src/components/lib/charts/AreaChart.astro +4 -4
- package/src/components/lib/charts/BarChart.astro +3 -3
- package/src/components/lib/charts/ChartFrame.astro +10 -10
- package/src/components/lib/charts/DonutChart.astro +2 -2
- package/src/components/lib/charts/DumbbellChart.astro +1 -1
- package/src/components/lib/charts/ForecastLineChart.astro +1 -1
- package/src/components/lib/charts/GaugeChart.astro +1 -1
- package/src/components/lib/charts/HeatmapChart.astro +1 -1
- package/src/components/lib/charts/HorizontalBarChart.astro +2 -2
- package/src/components/lib/charts/KpiStatTile.astro +4 -4
- package/src/components/lib/charts/LinearProgressGauge.astro +4 -4
- package/src/components/lib/charts/MetricDeltaTable.astro +3 -3
- package/src/components/lib/charts/RadarMetricChart.astro +4 -4
- package/src/components/lib/charts/RadialBarChart.astro +1 -1
- package/src/components/lib/charts/RetentionCohortTable.astro +2 -2
- package/src/components/lib/charts/TreemapChart.astro +1 -1
- package/src/components/lib/ecommerce/CartDrawer.astro +483 -0
- package/src/components/lib/ecommerce/CartPageList.astro +290 -0
- package/src/components/lib/ecommerce/CartToast.astro +276 -0
- package/src/components/lib/ecommerce/CategoryTiles.astro +143 -0
- package/src/components/lib/ecommerce/CheckoutForm.astro +423 -0
- package/src/components/lib/ecommerce/CountdownBanner.astro +230 -0
- package/src/components/lib/ecommerce/FilterBar.astro +278 -0
- package/src/components/lib/ecommerce/FilterSidebar.astro +405 -0
- package/src/components/lib/ecommerce/LiveActivityToast.astro +213 -0
- package/src/components/lib/ecommerce/OrderSummary.astro +295 -0
- package/src/components/lib/ecommerce/ProductBuyBox.astro +247 -0
- package/src/components/lib/ecommerce/ProductCardMinimal.astro +229 -0
- package/src/components/lib/ecommerce/ProductGallery.astro +145 -0
- package/src/components/lib/ecommerce/ProductGrid.astro +118 -0
- package/src/components/lib/ecommerce/ProductMedia.astro +113 -0
- package/src/components/lib/ecommerce/ProductRating.astro +78 -0
- package/src/components/lib/ecommerce/ProductToolbar.astro +93 -0
- package/src/components/lib/ecommerce/PromoBar.astro +145 -0
- package/src/components/lib/ecommerce/StockIndicator.astro +127 -0
- package/src/components/lib/ecommerce/StoreHeader.astro +446 -0
- package/src/components/lib/ecommerce/StoreHero.astro +260 -0
- package/src/components/lib/ecommerce/StoreProductCard.astro +307 -0
- package/src/components/lib/ecommerce/TrustBadges.astro +101 -0
- package/src/components/lib/ecommerce/VariantPicker.astro +145 -0
- package/src/components/lib/ecommerce/cart-store.ts +151 -0
- package/src/components/lib/ecommerce/catalog-filter.ts +62 -0
- package/src/components/lib/ecommerce/index.ts +34 -0
- package/src/components/lib/ecommerce/product-icons.ts +28 -0
- package/src/components/lib/ecommerce/types.ts +70 -0
- package/src/components/lib/forms/AnimatedInput.astro +4 -2
- package/src/components/lib/forms/CustomRadioGroup.astro +3 -1
- package/src/components/lib/index.ts +2 -0
- package/src/components/lib/layout/BentoGrid3.astro +6 -4
- package/src/components/lib/layout/CenterFixedBox.astro +2 -2
- package/src/components/lib/layout/CenteredContainer.astro +4 -2
- package/src/components/lib/layout/ClusterHorizontal.astro +2 -2
- package/src/components/lib/layout/FeatureHero.astro +4 -2
- package/src/components/lib/layout/FooterCenteredMinimal.astro +4 -2
- package/src/components/lib/layout/FullBleedSection.astro +2 -2
- package/src/components/lib/layout/GalleryGrid4.astro +2 -2
- package/src/components/lib/layout/HolyGrailGrid.astro +11 -9
- package/src/components/lib/layout/LandingSectionSplit.astro +5 -3
- package/src/components/lib/layout/MasonryGrid.astro +2 -2
- package/src/components/lib/layout/MinimalFooterGrid.astro +1 -1
- package/src/components/lib/layout/ScrollSnapSection.astro +1 -1
- package/src/components/lib/layout/SidebarLayoutWrapper.astro +4 -2
- package/src/components/lib/layout/SplitScreenLayout.astro +3 -3
- package/src/components/lib/layout/StepLayoutVertical.astro +1 -1
- package/src/components/lib/layout/StickySidebarWrapper.astro +4 -2
- package/src/components/lib/sections/AgencyContactBrief.astro +194 -0
- package/src/components/lib/sections/AgencyFooterCta.astro +94 -0
- package/src/components/lib/sections/AgencyHeader.astro +161 -0
- package/src/components/lib/sections/AgencyHeroKinetic.astro +172 -0
- package/src/components/lib/sections/AgencyServicesList.astro +113 -0
- package/src/components/lib/sections/AgencyTeamGrid.astro +111 -0
- package/src/components/lib/sections/AgencyWorkGrid.astro +147 -0
- package/src/components/lib/sections/BlogGridSection.astro +9 -7
- package/src/components/lib/sections/ButtonsShowcase.astro +20 -18
- package/src/components/lib/sections/CardsShowcase.astro +28 -26
- package/src/components/lib/sections/CareersOpenings.astro +10 -8
- package/src/components/lib/sections/ChangelogSection.astro +14 -7
- package/src/components/lib/sections/ContactGlassForm.astro +10 -8
- package/src/components/lib/sections/ContactSplitMap.astro +11 -9
- package/src/components/lib/sections/CtaAppDownload.astro +13 -11
- package/src/components/lib/sections/CtaGlowBanner.astro +12 -10
- package/src/components/lib/sections/CtaNewsletterSection.astro +13 -11
- package/src/components/lib/sections/CtaSplitImage.astro +13 -11
- package/src/components/lib/sections/DataShowcase.astro +23 -21
- package/src/components/lib/sections/FaqAccordionSection.astro +8 -8
- package/src/components/lib/sections/FaqTwoColumn.astro +9 -7
- package/src/components/lib/sections/FeatureAlternatingRows.astro +10 -8
- package/src/components/lib/sections/FeatureBentoGrid.astro +13 -11
- package/src/components/lib/sections/FeatureIconGrid.astro +6 -6
- package/src/components/lib/sections/FeatureTabsShowcase.astro +13 -11
- package/src/components/lib/sections/FeatureTimelineFlow.astro +8 -6
- package/src/components/lib/sections/FeedbackShowcase.astro +15 -13
- package/src/components/lib/sections/FooterMegaSection.astro +13 -11
- package/src/components/lib/sections/FormsShowcase.astro +22 -20
- package/src/components/lib/sections/HeroDashboardPreview.astro +11 -9
- package/src/components/lib/sections/HeroGlass.astro +22 -20
- package/src/components/lib/sections/HeroGradient.astro +15 -13
- package/src/components/lib/sections/HeroMinimalCentered.astro +10 -10
- package/src/components/lib/sections/HeroShowcaseSplit.astro +18 -16
- package/src/components/lib/sections/HeroSplit.astro +13 -11
- package/src/components/lib/sections/HeroTerminal.astro +14 -12
- package/src/components/lib/sections/HeroWaitlist.astro +10 -8
- package/src/components/lib/sections/HowItWorksSteps.astro +12 -10
- package/src/components/lib/sections/IntegrationsGrid.astro +7 -7
- package/src/components/lib/sections/LayoutShowcase.astro +21 -19
- package/src/components/lib/sections/LogoCloudSection.astro +4 -4
- package/src/components/lib/sections/LogoWallGrid.astro +6 -4
- package/src/components/lib/sections/NavigationShowcase.astro +15 -13
- package/src/components/lib/sections/OverlaysShowcase.astro +21 -19
- package/src/components/lib/sections/PricingComparisonMatrix.astro +15 -13
- package/src/components/lib/sections/PricingSinglePlan.astro +13 -11
- package/src/components/lib/sections/PricingTierCards.astro +11 -9
- package/src/components/lib/sections/PricingToggleCards.astro +13 -13
- package/src/components/lib/sections/ShopCategoryHero.astro +103 -0
- package/src/components/lib/sections/ShopCollectionMosaic.astro +131 -0
- package/src/components/lib/sections/ShopFooterWordmark.astro +100 -0
- package/src/components/lib/sections/ShopHeaderEditorial.astro +396 -0
- package/src/components/lib/sections/ShopHeroEditorial.astro +151 -0
- package/src/components/lib/sections/ShopLookbook.astro +250 -0
- package/src/components/lib/sections/ShopNewsletterEditorial.astro +128 -0
- package/src/components/lib/sections/ShopProductRail.astro +150 -0
- package/src/components/lib/sections/ShopReviewsEditorial.astro +133 -0
- package/src/components/lib/sections/ShopValuesMarquee.astro +91 -0
- package/src/components/lib/sections/StatsCounterBand.astro +9 -7
- package/src/components/lib/sections/StatsDashboardSection.astro +4 -2
- package/src/components/lib/sections/StatsMetricShowcase.astro +9 -7
- package/src/components/lib/sections/TeamGridSection.astro +12 -10
- package/src/components/lib/sections/TestimonialCarousel.astro +10 -8
- package/src/components/lib/sections/TestimonialFeatured.astro +7 -5
- package/src/components/lib/sections/TestimonialGridSection.astro +7 -7
- package/src/components/lib/sections/TestimonialWallGlass.astro +11 -9
- package/src/components/lib/sections/TypographyShowcase.astro +10 -8
- package/src/components/lib/sections/index.ts +10 -0
- package/src/components/lib/templates/ecommerce/StoreCategoryPage.astro +160 -0
- package/src/components/lib/templates/ecommerce/StoreCheckoutPage.astro +98 -0
- package/src/components/lib/templates/ecommerce/StoreHomePage.astro +191 -0
- package/src/components/lib/templates/ecommerce/StoreLayout.astro +169 -0
- package/src/components/lib/templates/ecommerce/StoreProductPage.astro +165 -0
- package/src/components/lib/templates/ecommerce/data.ts +187 -0
- package/src/components/lib/templates/ecommerce/index.ts +14 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialBagPage.astro +52 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialCheckoutPage.astro +123 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialHomePage.astro +102 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialLayout.astro +216 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialProductPage.astro +205 -0
- package/src/components/lib/templates/ecommerce-editorial/EditorialShopPage.astro +112 -0
- package/src/components/lib/templates/ecommerce-editorial/data.ts +125 -0
- package/src/components/lib/templates/ecommerce-editorial/index.ts +16 -0
- package/src/components/lib/templates/saas-hotel/AppLayout.astro +83 -0
- package/src/components/lib/templates/saas-hotel/DashboardPage.astro +66 -0
- package/src/components/lib/templates/saas-hotel/GuestsPage.astro +65 -0
- package/src/components/lib/templates/saas-hotel/LandingPage.astro +213 -0
- package/src/components/lib/templates/saas-hotel/ReportsPage.astro +63 -0
- package/src/components/lib/templates/saas-hotel/ReservationsPage.astro +49 -0
- package/src/components/lib/templates/saas-hotel/RoomsPage.astro +48 -0
- package/src/components/lib/templates/saas-hotel/SettingsPage.astro +115 -0
- package/src/components/lib/templates/saas-hotel/SignInPage.astro +50 -0
- package/src/components/lib/templates/saas-hotel/data.ts +229 -0
- package/src/components/lib/templates/saas-hotel/index.ts +19 -0
- package/src/components/lib/templates/saas-hotel/lobby-theme.css +90 -0
- package/src/styles/global.css +95 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ⬇ Astro Component Kit
|
|
2
2
|
|
|
3
|
-
> A free, open-source accessible UI component library built for [Astro 5.x](https://astro.build).
|
|
3
|
+
> A free, open-source accessible UI component library and production templates built for [Astro 5.x](https://astro.build).
|
|
4
4
|
> **🌐 Browse & copy components** at [astrocomponents.dev](https://astrocomponents.dev)
|
|
5
5
|
> **📦 Install via npm** or **copy-paste** — your choice!
|
|
6
6
|
|
|
@@ -13,13 +13,14 @@
|
|
|
13
13
|
|
|
14
14
|
## ✨ Features
|
|
15
15
|
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
16
|
+
- 🛍️ **Multi-page production templates** — 3 complete templates (E-commerce Store, Editorial Boutique, SaaS Hotel) with state management, cart persistence, and live previews
|
|
17
|
+
- 🎨 **Dark & Light theme** — dark mode first with official `[data-theme="light"]` support, adaptive tokens, and glassmorphism
|
|
18
|
+
- ⚡ **Full-page sections** — 41+ production-ready landing sections (Heroes, Bento Grids, Pricing Matrices, Testimonials, CTAs, FAQs, Teams, Footers)
|
|
19
|
+
- 📈 **Zero-dependency SVG charts** — 41 pure-SVG data visualization components rendered at build time with keyboard tooltips and data table fallbacks
|
|
20
|
+
- ♿ **Strictly Accessible** — WCAG 2.1 AA compliant with ARIA roles and full keyboard navigation
|
|
19
21
|
- 📋 **Copy & paste** — browse [astrocomponents.dev](https://astrocomponents.dev) and copy components directly
|
|
20
|
-
- 📦 **npm installable** — `npm install astro-component-kit` for direct imports
|
|
22
|
+
- 📦 **npm installable** — `npm install astro-component-kit` for direct modular imports
|
|
21
23
|
- ♻️ **Zero runtime dependencies** — pure `.astro` components + Vanilla CSS
|
|
22
|
-
- 🌑 **Dark mode first** — crafted for modern, dark-themed developer interfaces
|
|
23
24
|
- 🔓 **Open Source** — MIT license, contributions welcome
|
|
24
25
|
|
|
25
26
|
---
|
|
@@ -45,7 +46,10 @@ import {
|
|
|
45
46
|
CtaGlowBanner
|
|
46
47
|
} from 'astro-component-kit';
|
|
47
48
|
|
|
48
|
-
// Or import by category (recommended for modularity)
|
|
49
|
+
// Or import by category (recommended for tree-shaking & modularity)
|
|
50
|
+
import { StoreProductCard, ProductBuyBox, VariantPicker, CartDrawer } from 'astro-component-kit/ecommerce';
|
|
51
|
+
import { DataTable, AppSidebar, AppTopbar, RoomRack } from 'astro-component-kit/app';
|
|
52
|
+
import { LineChart, BarChart, DonutChart, KpiStatTile } from 'astro-component-kit/charts';
|
|
49
53
|
import { GlassButton, GlowButton, ThreeDPushButton } from 'astro-component-kit/buttons';
|
|
50
54
|
import { GlassCard, ProfileCard, PricingCard } from 'astro-component-kit/cards';
|
|
51
55
|
import { GlassAlert, Badge, ConfettiFeedback } from 'astro-component-kit/feedback';
|
|
@@ -54,7 +58,6 @@ import { OverlayModal, CommandDialog, BottomSheetMobile } from 'astro-component-
|
|
|
54
58
|
import { AnimatedInput, OTPInput, GlassSlider } from 'astro-component-kit/forms';
|
|
55
59
|
import { GlassCardGrid, SplitScreenLayout, MasonryGrid, BentoGrid3 } from 'astro-component-kit/layout';
|
|
56
60
|
import { GradientHeading, GlassBlockQuote, CyberpunkGlitchText } from 'astro-component-kit/typography';
|
|
57
|
-
import { AreaChart, DonutChart, BarChart } from 'astro-component-kit/charts';
|
|
58
61
|
import {
|
|
59
62
|
FeatureBentoGrid,
|
|
60
63
|
PricingComparisonMatrix,
|
|
@@ -74,7 +77,7 @@ import {
|
|
|
74
77
|
<FeatureBentoGrid />
|
|
75
78
|
```
|
|
76
79
|
|
|
77
|
-
**Import global design tokens** (
|
|
80
|
+
**Import global design tokens** (required for theme colors, spacing and typography):
|
|
78
81
|
|
|
79
82
|
```astro
|
|
80
83
|
---
|
|
@@ -85,7 +88,7 @@ import 'astro-component-kit/global.css';
|
|
|
85
88
|
### Option 2: Copy & Paste from Docs
|
|
86
89
|
|
|
87
90
|
1. Visit [astrocomponents.dev](https://astrocomponents.dev)
|
|
88
|
-
2. Browse the component library
|
|
91
|
+
2. Browse the component library or templates
|
|
89
92
|
3. Click **Copy** on the component code
|
|
90
93
|
4. Paste into your `src/components/` directory
|
|
91
94
|
5. Import and use in your Astro pages
|
|
@@ -105,12 +108,14 @@ Open [http://localhost:4321](http://localhost:4321) to browse components locally
|
|
|
105
108
|
|
|
106
109
|
## 📚 Component & Section Library
|
|
107
110
|
|
|
108
|
-
**
|
|
111
|
+
**320+ components & full-page sections** across 13 categories plus 3 complete templates:
|
|
109
112
|
|
|
110
113
|
| Category | Components | Description |
|
|
111
114
|
|----------|:----------:|-------------|
|
|
115
|
+
| **E-commerce** | 29 | Shop building blocks: product cards, cart drawer, buy box, variant picker, order summary, checkout, stock indicators |
|
|
116
|
+
| **App & Dashboard** | 15 | SaaS building blocks: DataTable, collapsible AppSidebar, AppTopbar, RoomRack, ArrivalsBoard, HousekeepingBoard, AuthCard |
|
|
112
117
|
| **Charts & Stats** | 47 | 41 zero-dependency SVG charts rendered at build time (line, area, bars, waterfall, pie, gauge, treemap, sankey, radar, heatmap, candlestick, KPI tiles…) plus 3 ApexCharts wrappers |
|
|
113
|
-
| **Sections** | 41 | Heroes, features, pricing, testimonials, CTAs, stats dashboards, careers, FAQs, contact, logo walls,
|
|
118
|
+
| **Sections** | 41 | Heroes, features, pricing, testimonials, CTAs, stats dashboards, careers, FAQs, contact, logo walls, shop sections, blog, footers |
|
|
114
119
|
| **Buttons** | 22 | Glass, glow, neumorphic, 3D push, magnetic, cyberpunk, and animated |
|
|
115
120
|
| **Cards** | 22 | Ecommerce, profile, pricing, weather, tilt, portfolio, kanban |
|
|
116
121
|
| **Layout** | 22 | Bento grids, masonry, split screens, sticky sidebars, card grids, full-bleed sections |
|
|
@@ -121,7 +126,64 @@ Open [http://localhost:4321](http://localhost:4321) to browse components locally
|
|
|
121
126
|
| **Data Display** | 23 | Tables, vertical/horizontal timelines, stats grids, sparklines, tree views |
|
|
122
127
|
| **Typography** | 24 | Gradient headings, glitch text, typewriter, 3D text layers, drop caps |
|
|
123
128
|
|
|
124
|
-
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
## 🛍️ Production Templates
|
|
132
|
+
|
|
133
|
+
Complete multi-page sites built exclusively with library components. Live interactive previews are available at [astrocomponents.dev/templates](https://astrocomponents.dev/templates/).
|
|
134
|
+
|
|
135
|
+
### 1. E-Commerce Store (Nova Store)
|
|
136
|
+
A production-ready digital storefront with 5 pages, client-side filtering without backend, and a browser-persistent cart:
|
|
137
|
+
|
|
138
|
+
```astro
|
|
139
|
+
---
|
|
140
|
+
// src/pages/index.astro
|
|
141
|
+
import 'astro-component-kit/global.css';
|
|
142
|
+
import { StoreHomePage } from 'astro-component-kit/templates/ecommerce';
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
<StoreHomePage />
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
- **Pages included:** `StoreHomePage`, `StoreCategoryPage`, `StoreProductPage`, `StoreCheckoutPage` and `StoreLayout`.
|
|
149
|
+
- **Persistent Cart:** `cart-store.ts` handles cart items, quantities, promo codes, tax, and cross-tab synchronization.
|
|
150
|
+
- **Import path:** `astro-component-kit/templates/ecommerce`
|
|
151
|
+
|
|
152
|
+
### 2. E-Commerce Editorial (Forma Studio)
|
|
153
|
+
High-fashion boutique aesthetic with serif typography, square lines, warm terracotta tones, and light theme default:
|
|
154
|
+
|
|
155
|
+
```astro
|
|
156
|
+
---
|
|
157
|
+
// src/pages/index.astro
|
|
158
|
+
import 'astro-component-kit/global.css';
|
|
159
|
+
import { EditorialHomePage } from 'astro-component-kit/templates/ecommerce-editorial';
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
<EditorialHomePage />
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
- **Pages included:** `EditorialHomePage`, `EditorialShopPage`, `EditorialProductPage`, `EditorialBagPage`, `EditorialCheckoutPage` and `EditorialLayout`.
|
|
166
|
+
- **Import path:** `astro-component-kit/templates/ecommerce-editorial`
|
|
167
|
+
|
|
168
|
+
### 3. SaaS Hotel & Hospitality App (The Lobby)
|
|
169
|
+
A dense, full-featured management dashboard:
|
|
170
|
+
|
|
171
|
+
```astro
|
|
172
|
+
---
|
|
173
|
+
// src/pages/app/index.astro
|
|
174
|
+
import 'astro-component-kit/global.css';
|
|
175
|
+
import { DashboardPage } from 'astro-component-kit/templates/saas-hotel';
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
<DashboardPage />
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
- **Pages included:** `DashboardPage`, `RoomsPage` (Room Rack timeline), `ReservationsPage`, `GuestsPage`, `ReportsPage`, `SettingsPage`, `SignInPage`, and `LandingPage`.
|
|
182
|
+
- **Import path:** `astro-component-kit/templates/saas-hotel`
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
## 📈 SVG Charts — Zero Dependencies
|
|
125
187
|
|
|
126
188
|
```astro
|
|
127
189
|
---
|
|
@@ -142,6 +204,19 @@ Every chart ships with a legend, keyboard-focusable marks with tooltips and a "V
|
|
|
142
204
|
|
|
143
205
|
---
|
|
144
206
|
|
|
207
|
+
## 🌓 Theming & Dark / Light Mode
|
|
208
|
+
|
|
209
|
+
Components are built dark-mode first with full support for light mode via the `[data-theme="light"]` attribute:
|
|
210
|
+
|
|
211
|
+
```html
|
|
212
|
+
<!-- Apply on html or body element -->
|
|
213
|
+
<html data-theme="light">
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
All design tokens (`--ink-rgb`, `--paper-rgb`, `--c-on-primary`, and `--chart-*`) adapt automatically, preserving high contrast and accessible readability.
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
145
220
|
## 📖 Usage Examples
|
|
146
221
|
|
|
147
222
|
### Building a Complete Landing Page in Minutes
|
|
@@ -166,7 +241,7 @@ import { MinimalFooterGrid } from 'astro-component-kit/layout';
|
|
|
166
241
|
|
|
167
242
|
<!-- 2. Hero Header -->
|
|
168
243
|
<HeroGradient
|
|
169
|
-
badge="New Release v0.
|
|
244
|
+
badge="New Release v0.4.1"
|
|
170
245
|
title="Build Production Websites at Lightning Speed"
|
|
171
246
|
subtitle="Zero client JavaScript runtime, accessible UI, and modern dark glassmorphism."
|
|
172
247
|
/>
|
|
@@ -247,22 +322,25 @@ import { Badge } from 'astro-component-kit/feedback';
|
|
|
247
322
|
astro-component-kit/
|
|
248
323
|
├── src/
|
|
249
324
|
│ ├── components/
|
|
250
|
-
│ │ ├── lib/ ←
|
|
251
|
-
│ │ │ ├──
|
|
252
|
-
│ │ │ ├──
|
|
253
|
-
│ │ │ ├──
|
|
254
|
-
│ │ │ ├──
|
|
255
|
-
│ │ │ ├──
|
|
256
|
-
│ │ │ ├──
|
|
257
|
-
│ │ │ ├──
|
|
258
|
-
│ │ │ ├──
|
|
259
|
-
│ │ │ ├──
|
|
260
|
-
│ │ │ ├──
|
|
261
|
-
│ │ │
|
|
325
|
+
│ │ ├── lib/ ← 320+ component source files & templates
|
|
326
|
+
│ │ │ ├── templates/ ← Multi-page templates (ecommerce, editorial, saas-hotel)
|
|
327
|
+
│ │ │ ├── ecommerce/ ← 29 e-commerce components & cart-store
|
|
328
|
+
│ │ │ ├── app/ ← 15 SaaS & dashboard components
|
|
329
|
+
│ │ │ ├── charts/ ← 47 SVG & interactive charts and KPI tiles
|
|
330
|
+
│ │ │ ├── sections/ ← 41 full-page landing & shop sections
|
|
331
|
+
│ │ │ ├── buttons/ ← 22 button components
|
|
332
|
+
│ │ │ ├── cards/ ← 22 card components
|
|
333
|
+
│ │ │ ├── layout/ ← 22 layout & grid components
|
|
334
|
+
│ │ │ ├── forms/ ← 24 form controls & inputs
|
|
335
|
+
│ │ │ ├── navigation/ ← 23 navbar & menu components
|
|
336
|
+
│ │ │ ├── overlays/ ← 23 overlay & modal components
|
|
337
|
+
│ │ │ ├── feedback/ ← 22 alert & feedback components
|
|
338
|
+
│ │ │ ├── data/ ← 23 data visualization & tables
|
|
339
|
+
│ │ │ └── typography/ ← 24 typography components
|
|
262
340
|
│ │ └── index.ts ← Main barrel export
|
|
263
341
|
│ └── types.d.ts ← TypeScript declarations
|
|
264
342
|
├── src/styles/
|
|
265
|
-
│ └── global.css ← Design tokens &
|
|
343
|
+
│ └── global.css ← Design tokens & theme styles (dark/light)
|
|
266
344
|
└── package.json
|
|
267
345
|
```
|
|
268
346
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "astro-component-kit",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "A free, open-source accessible UI component library for Astro",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/components/index.ts",
|
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
"./typography": "./src/components/lib/typography/index.ts",
|
|
20
20
|
"./sections": "./src/components/lib/sections/index.ts",
|
|
21
21
|
"./charts": "./src/components/lib/charts/index.ts",
|
|
22
|
+
"./ecommerce": "./src/components/lib/ecommerce/index.ts",
|
|
23
|
+
"./app": "./src/components/lib/app/index.ts",
|
|
24
|
+
"./templates/ecommerce": "./src/components/lib/templates/ecommerce/index.ts",
|
|
25
|
+
"./templates/ecommerce-editorial": "./src/components/lib/templates/ecommerce-editorial/index.ts",
|
|
26
|
+
"./templates/saas-hotel": "./src/components/lib/templates/saas-hotel/index.ts",
|
|
22
27
|
"./global.css": "./src/styles/global.css"
|
|
23
28
|
},
|
|
24
29
|
"files": [
|
|
@@ -37,7 +42,8 @@
|
|
|
37
42
|
"astro": "astro",
|
|
38
43
|
"typecheck": "astro check",
|
|
39
44
|
"registry:generate": "node scripts/generate-registry.mjs",
|
|
40
|
-
"prepublishOnly": "astro check"
|
|
45
|
+
"prepublishOnly": "astro check",
|
|
46
|
+
"indexnow:dry": "node scripts/indexnow.mjs --dry-run"
|
|
41
47
|
},
|
|
42
48
|
"keywords": [
|
|
43
49
|
"astro",
|
|
@@ -48,7 +54,14 @@
|
|
|
48
54
|
"a11y",
|
|
49
55
|
"glassmorphism",
|
|
50
56
|
"frontend",
|
|
51
|
-
"web"
|
|
57
|
+
"web",
|
|
58
|
+
"ecommerce",
|
|
59
|
+
"shop",
|
|
60
|
+
"cart",
|
|
61
|
+
"templates",
|
|
62
|
+
"dashboard",
|
|
63
|
+
"saas",
|
|
64
|
+
"admin"
|
|
52
65
|
],
|
|
53
66
|
"author": "konstantinwdk <entiplay@gmail.com>",
|
|
54
67
|
"license": "MIT",
|
package/src/components/index.ts
CHANGED
|
@@ -18,6 +18,8 @@ export * from './lib/buttons';
|
|
|
18
18
|
export * from './lib/cards';
|
|
19
19
|
export * from './lib/charts';
|
|
20
20
|
export * from './lib/data';
|
|
21
|
+
export * from './lib/ecommerce';
|
|
22
|
+
export * from './lib/app';
|
|
21
23
|
export * from './lib/feedback';
|
|
22
24
|
export * from './lib/forms';
|
|
23
25
|
export * from './lib/layout';
|