@nuvoui/core 1.4.1 → 1.4.3

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # NuvoUI
2
2
 
3
- _Human-readable SCSS for modern devs. Discover NuvoUI_
3
+ A utility-first CSS framework built with modern SCSS, providing atomic classes and mixins for rapid UI development.
4
4
 
5
5
  [![GitHub stars](https://img.shields.io/github/stars/NuvoUI/core?style=flat-square&color=FFB000)](https://github.com/NuvoUI/core)
6
6
  [![GitHub forks](https://img.shields.io/github/forks/NuvoUI/core?style=flat-square&color=FFB000)](https://github.com/NuvoUI/core)
@@ -8,9 +8,53 @@ _Human-readable SCSS for modern devs. Discover NuvoUI_
8
8
  [![Discord](https://img.shields.io/discord/1307989034638905345?style=flat-square&label=Discord&color=5865F2)](https://discord.gg/dhxxKTK5Zx)
9
9
  [![Twitter](https://img.shields.io/badge/Twitter-@NuvoUI-1DA1F2?style=flat-square)](https://x.com/NuvoUI)
10
10
 
11
- ## The Human-First SCSS Framework
12
-
13
- NuvoUI is designed for developers who want a better way to build responsive, beautiful websites without unnecessary complexity. Write CSS as naturally as you would speak it.
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
- ## Core Features
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
- ## Step 3: Implementing Responsive Design
171
+ ### Elegant SCSS Mixins
123
172
 
124
173
  ```scss
125
174
  .hero-image {
126
- @include NuvoUI.mx-auto;
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 NuvoUI.media-up(lg) {
139
- @include NuvoUI.max-width(80%);
178
+ @include media-up(lg) {
179
+ @include apply(max-w(80%));
140
180
  }
141
181
  }
182
+ ```
142
183
 
143
- // Generated CSS:
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
- @media (min-width: 1024px) {
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
@@ -226,6 +226,7 @@ button:not([class*=bg-]):hover {
226
226
  }
227
227
 
228
228
  input[type=text],
229
+ input[type=tel],
229
230
  input[type=email],
230
231
  input[type=password],
231
232
  input[type=number],
@@ -239,6 +240,7 @@ textarea {
239
240
  transition: border 0.2s ease-in-out;
240
241
  }
241
242
  input[type=text]:focus,
243
+ input[type=tel]:focus,
242
244
  input[type=email]:focus,
243
245
  input[type=password]:focus,
244
246
  input[type=number]:focus,
@@ -32723,7 +32725,7 @@ code {
32723
32725
  }
32724
32726
 
32725
32727
  .left-0 {
32726
- left: 0;
32728
+ left: 0rem;
32727
32729
  }
32728
32730
 
32729
32731
  .top-1 {
@@ -33106,7 +33108,7 @@ code {
33106
33108
  bottom: 0rem;
33107
33109
  }
33108
33110
  .left-0\@xs {
33109
- left: 0;
33111
+ left: 0rem;
33110
33112
  }
33111
33113
  .top-1\@xs {
33112
33114
  top: 0.25rem;
@@ -33421,7 +33423,7 @@ code {
33421
33423
  bottom: 0rem;
33422
33424
  }
33423
33425
  .left-0\@sm {
33424
- left: 0;
33426
+ left: 0rem;
33425
33427
  }
33426
33428
  .top-1\@sm {
33427
33429
  top: 0.25rem;
@@ -33736,7 +33738,7 @@ code {
33736
33738
  bottom: 0rem;
33737
33739
  }
33738
33740
  .left-0\@md {
33739
- left: 0;
33741
+ left: 0rem;
33740
33742
  }
33741
33743
  .top-1\@md {
33742
33744
  top: 0.25rem;
@@ -34051,7 +34053,7 @@ code {
34051
34053
  bottom: 0rem;
34052
34054
  }
34053
34055
  .left-0\@lg {
34054
- left: 0;
34056
+ left: 0rem;
34055
34057
  }
34056
34058
  .top-1\@lg {
34057
34059
  top: 0.25rem;
@@ -34366,7 +34368,7 @@ code {
34366
34368
  bottom: 0rem;
34367
34369
  }
34368
34370
  .left-0\@xl {
34369
- left: 0;
34371
+ left: 0rem;
34370
34372
  }
34371
34373
  .top-1\@xl {
34372
34374
  top: 0.25rem;
@@ -34681,7 +34683,7 @@ code {
34681
34683
  bottom: 0rem;
34682
34684
  }
34683
34685
  .left-0\@2xl {
34684
- left: 0;
34686
+ left: 0rem;
34685
34687
  }
34686
34688
  .top-1\@2xl {
34687
34689
  top: 0.25rem;