@nuvoui/core 1.4.2 → 1.4.4
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 +76 -61
- package/dist/nuvoui.css +7 -7
- package/dist/nuvoui.css.map +1 -1
- package/dist/nuvoui.min.css.map +1 -1
- package/package.json +1 -1
- package/src/styles/config/_colors.scss +10 -0
- package/src/styles/config/_shadows.scss +42 -1
- package/src/styles/functions/_colors.scss +10 -0
- package/src/styles/utilities/_position.scss +18 -7
- package/src/styles/utilities/_shadows.scss +7 -45
- package/src/styles/utilities/_spacing.scss +1 -3
- package/src/styles/utilities/_typography.scss +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# NuvoUI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A utility-first CSS framework built with modern SCSS, providing atomic classes and mixins for rapid UI development.
|
|
4
4
|
|
|
5
5
|
[](https://github.com/NuvoUI/core)
|
|
6
6
|
[](https://github.com/NuvoUI/core)
|
|
@@ -8,9 +8,53 @@ _Human-readable SCSS for modern devs. Discover NuvoUI_
|
|
|
8
8
|
[](https://discord.gg/dhxxKTK5Zx)
|
|
9
9
|
[](https://x.com/NuvoUI)
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
NuvoUI is
|
|
11
|
+
## What is NuvoUI?
|
|
12
|
+
|
|
13
|
+
NuvoUI is a comprehensive CSS framework that combines the flexibility of utility classes with the power of SCSS mixins. It offers a complete design system with responsive breakpoints, semantic theming, and advanced layout capabilities designed for developers who want to build responsive, beautiful websites without unnecessary complexity.
|
|
14
|
+
|
|
15
|
+
## Key Features
|
|
16
|
+
|
|
17
|
+
### Utility-First Architecture
|
|
18
|
+
- **Atomic Classes**: Single-purpose classes like `bg-primary`, `p-4`, `flex`
|
|
19
|
+
- **SCSS Mixins**: Use utilities in SCSS via `@include apply(bg(primary), p(4), flex)`
|
|
20
|
+
- **Responsive Modifiers**: Breakpoint-specific classes with `@breakpoint` syntax
|
|
21
|
+
- **State Modifiers**: Interactive states with `hover:`, `focus:`, `active:` prefixes
|
|
22
|
+
|
|
23
|
+
### Advanced Theming System
|
|
24
|
+
- **CSS Custom Properties**: Dynamic theming with CSS variables
|
|
25
|
+
- **Semantic Tokens**: Brand colors (primary, secondary) and contextual colors (success, danger, warning, info)
|
|
26
|
+
- **Automatic Color Scales**: Generate complete color palettes from base colors
|
|
27
|
+
- **Contrast Calculation**: Automatic text color based on background contrast ratios
|
|
28
|
+
- **Dark Mode Support**: Built-in theme switching capabilities
|
|
29
|
+
|
|
30
|
+
### Comprehensive Layout System
|
|
31
|
+
- **CSS Grid Utilities**: Complete grid system with areas, spans, and responsive variants
|
|
32
|
+
- **Flexbox System**: Full flexbox implementation with alignment and distribution controls
|
|
33
|
+
- **Container Queries**: Modern responsive design with element-based breakpoints
|
|
34
|
+
- **Modern Layout Tools**: CSS Subgrid, aspect ratios, and intrinsic sizing
|
|
35
|
+
|
|
36
|
+
### Typography & Content
|
|
37
|
+
- **Fluid Typography**: Responsive font sizes with configurable scales
|
|
38
|
+
- **Advanced Text Handling**: Truncation (single and multi-line), overflow control, text transforms
|
|
39
|
+
- **Letter Spacing**: Granular tracking controls
|
|
40
|
+
- **Line Height**: Semantic leading classes for optimal readability
|
|
41
|
+
|
|
42
|
+
### Visual Enhancement
|
|
43
|
+
- **Elevation System**: Consistent shadow scales with z-index management
|
|
44
|
+
- **Border System**: Comprehensive border utilities with radius, styles, and colors
|
|
45
|
+
- **Transform System**: CSS transforms using CSS variables for better performance
|
|
46
|
+
- **Transition System**: Smooth animations with configurable timing and easing
|
|
47
|
+
|
|
48
|
+
### Interactive Components
|
|
49
|
+
- **Tooltip System**: Lightweight tooltips with positioning and sizing options
|
|
50
|
+
- **State Management**: Comprehensive hover, focus, and active state handling
|
|
51
|
+
- **Backdrop Utilities**: Modern backdrop filters and effects
|
|
52
|
+
|
|
53
|
+
### Developer Experience
|
|
54
|
+
- **Build System**: Automated utility generation from configuration
|
|
55
|
+
- **Configuration**: Extensive customization through SCSS variables
|
|
56
|
+
- **Documentation**: Interactive examples with live previews
|
|
57
|
+
- **Atomic Structure**: BEM-compatible component architecture
|
|
14
58
|
|
|
15
59
|
## ✨ Why Choose NuvoUI?
|
|
16
60
|
|
|
@@ -58,7 +102,27 @@ yarn add @nuvoui/core
|
|
|
58
102
|
<link rel="stylesheet" href="node_modules/@nuvoui/core/dist/nuvoui.min.css">
|
|
59
103
|
```
|
|
60
104
|
|
|
61
|
-
##
|
|
105
|
+
## Architecture
|
|
106
|
+
|
|
107
|
+
### Configuration-Driven
|
|
108
|
+
All utilities are generated from SCSS configuration maps:
|
|
109
|
+
```scss
|
|
110
|
+
$spacing: (0, 0.25rem, 0.5rem, 1rem, 1.5rem, 2rem, 3rem, 4rem, 6rem, 8rem);
|
|
111
|
+
$colors: (primary: #3b82f6, secondary: #6b7280, success: #10b981);
|
|
112
|
+
$breakpoints: (sm: 576px, md: 768px, lg: 992px, xl: 1200px);
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Modern CSS Features
|
|
116
|
+
- CSS Custom Properties for dynamic theming
|
|
117
|
+
- CSS Grid and Flexbox for layout
|
|
118
|
+
- Container Queries for responsive design
|
|
119
|
+
- CSS Transforms and Filters
|
|
120
|
+
- Modern color functions (oklch, color-mix)
|
|
121
|
+
|
|
122
|
+
### Framework Agnostic
|
|
123
|
+
Works with any frontend framework or vanilla HTML/CSS. No JavaScript dependencies.
|
|
124
|
+
|
|
125
|
+
## Core Features Examples
|
|
62
126
|
|
|
63
127
|
### 🎨 Beautiful Color System
|
|
64
128
|
|
|
@@ -73,7 +137,6 @@ NuvoUI includes a comprehensive color system with semantic color variables and a
|
|
|
73
137
|
|
|
74
138
|
Build complex layouts with ease using our grid and flexbox utilities.
|
|
75
139
|
|
|
76
|
-
|
|
77
140
|
```html
|
|
78
141
|
<!-- Responsive grid with auto placement -->
|
|
79
142
|
<div class="grid cols-12 gap-4">
|
|
@@ -88,22 +151,8 @@ Build complex layouts with ease using our grid and flexbox utilities.
|
|
|
88
151
|
</div>
|
|
89
152
|
```
|
|
90
153
|
|
|
91
|
-
###
|
|
92
|
-
```scss
|
|
93
|
-
.floating-element {
|
|
94
|
-
@include NuvoUI.animate-float((
|
|
95
|
-
distance: 10px,
|
|
96
|
-
duration: 3s,
|
|
97
|
-
direction: vertical
|
|
98
|
-
));
|
|
99
|
-
}
|
|
100
|
-
```
|
|
101
|
-
|
|
102
154
|
### 🌓 Simple Dark Mode
|
|
103
155
|
|
|
104
|
-
|
|
105
|
-
### Example 2: Elegant SCSS Mixins
|
|
106
|
-
|
|
107
156
|
```html
|
|
108
157
|
<html data-theme="dark">
|
|
109
158
|
<!-- Your content will use dark theme colors -->
|
|
@@ -119,56 +168,22 @@ Toggle with a simple script:
|
|
|
119
168
|
</button>
|
|
120
169
|
```
|
|
121
170
|
|
|
122
|
-
|
|
171
|
+
### Elegant SCSS Mixins
|
|
123
172
|
|
|
124
173
|
```scss
|
|
125
174
|
.hero-image {
|
|
126
|
-
@include
|
|
127
|
-
@include NuvoUI.my(40);
|
|
128
|
-
@include NuvoUI.rounded(8);
|
|
129
|
-
@include NuvoUI.shadow-lg;
|
|
130
|
-
|
|
131
|
-
// Add custom animation
|
|
132
|
-
@include NuvoUI.animate-bounce((
|
|
133
|
-
horizontal: 3%,
|
|
134
|
-
duration: 25s,
|
|
135
|
-
));
|
|
175
|
+
@include apply(mx(auto), my(40), rounded(8), shadow(lg));
|
|
136
176
|
|
|
137
177
|
// Responsive behavior
|
|
138
|
-
@include
|
|
139
|
-
@include
|
|
178
|
+
@include media-up(lg) {
|
|
179
|
+
@include apply(max-w(80%));
|
|
140
180
|
}
|
|
141
181
|
}
|
|
182
|
+
```
|
|
142
183
|
|
|
143
|
-
|
|
144
|
-
.hero-image {
|
|
145
|
-
margin-left: auto;
|
|
146
|
-
margin-right: auto;
|
|
147
|
-
margin-top: 40px !important;
|
|
148
|
-
margin-bottom: 40px !important;
|
|
149
|
-
border-radius: 8px;
|
|
150
|
-
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
|
|
151
|
-
animation: anim-bounce-0p-3per 25s ease-in-out infinite;
|
|
152
|
-
}
|
|
184
|
+
## Browser Support
|
|
153
185
|
|
|
154
|
-
|
|
155
|
-
.hero-image {
|
|
156
|
-
max-width: 80%;
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
@keyframes anim-bounce-0p-3per {
|
|
161
|
-
0% {
|
|
162
|
-
transform: translateX(-0%) translateY(-3%);
|
|
163
|
-
}
|
|
164
|
-
50% {
|
|
165
|
-
transform: translateX(0%) translateY(3%);
|
|
166
|
-
}
|
|
167
|
-
100% {
|
|
168
|
-
transform: translateX(-0%) translateY(-3%);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
```
|
|
186
|
+
Modern browsers supporting CSS Grid, Custom Properties, and modern CSS features. IE11+ with appropriate polyfills for legacy support.
|
|
172
187
|
|
|
173
188
|
|
|
174
189
|
## Documentation
|
package/dist/nuvoui.css
CHANGED
|
@@ -32725,7 +32725,7 @@ code {
|
|
|
32725
32725
|
}
|
|
32726
32726
|
|
|
32727
32727
|
.left-0 {
|
|
32728
|
-
left:
|
|
32728
|
+
left: 0rem;
|
|
32729
32729
|
}
|
|
32730
32730
|
|
|
32731
32731
|
.top-1 {
|
|
@@ -33108,7 +33108,7 @@ code {
|
|
|
33108
33108
|
bottom: 0rem;
|
|
33109
33109
|
}
|
|
33110
33110
|
.left-0\@xs {
|
|
33111
|
-
left:
|
|
33111
|
+
left: 0rem;
|
|
33112
33112
|
}
|
|
33113
33113
|
.top-1\@xs {
|
|
33114
33114
|
top: 0.25rem;
|
|
@@ -33423,7 +33423,7 @@ code {
|
|
|
33423
33423
|
bottom: 0rem;
|
|
33424
33424
|
}
|
|
33425
33425
|
.left-0\@sm {
|
|
33426
|
-
left:
|
|
33426
|
+
left: 0rem;
|
|
33427
33427
|
}
|
|
33428
33428
|
.top-1\@sm {
|
|
33429
33429
|
top: 0.25rem;
|
|
@@ -33738,7 +33738,7 @@ code {
|
|
|
33738
33738
|
bottom: 0rem;
|
|
33739
33739
|
}
|
|
33740
33740
|
.left-0\@md {
|
|
33741
|
-
left:
|
|
33741
|
+
left: 0rem;
|
|
33742
33742
|
}
|
|
33743
33743
|
.top-1\@md {
|
|
33744
33744
|
top: 0.25rem;
|
|
@@ -34053,7 +34053,7 @@ code {
|
|
|
34053
34053
|
bottom: 0rem;
|
|
34054
34054
|
}
|
|
34055
34055
|
.left-0\@lg {
|
|
34056
|
-
left:
|
|
34056
|
+
left: 0rem;
|
|
34057
34057
|
}
|
|
34058
34058
|
.top-1\@lg {
|
|
34059
34059
|
top: 0.25rem;
|
|
@@ -34368,7 +34368,7 @@ code {
|
|
|
34368
34368
|
bottom: 0rem;
|
|
34369
34369
|
}
|
|
34370
34370
|
.left-0\@xl {
|
|
34371
|
-
left:
|
|
34371
|
+
left: 0rem;
|
|
34372
34372
|
}
|
|
34373
34373
|
.top-1\@xl {
|
|
34374
34374
|
top: 0.25rem;
|
|
@@ -34683,7 +34683,7 @@ code {
|
|
|
34683
34683
|
bottom: 0rem;
|
|
34684
34684
|
}
|
|
34685
34685
|
.left-0\@2xl {
|
|
34686
|
-
left:
|
|
34686
|
+
left: 0rem;
|
|
34687
34687
|
}
|
|
34688
34688
|
.top-1\@2xl {
|
|
34689
34689
|
top: 0.25rem;
|