strivui 1.22.53 → 1.22.56
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 +60 -105
- package/dist/striveui.css +485 -23
- package/package.json +6 -3
- package/dist/assets/output-CqL92qzR.css +0 -1
- package/dist/index.esm.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/striveui.css.map +0 -1
- package/dist/types/component/blocks.d.ts +0 -28
- package/dist/types/component/nativeBlock.d.ts +0 -74
- package/dist/types/component/uiBlock.d.ts +0 -12
- package/dist/types/component/webBlcok.d.ts +0 -57
package/README.md
CHANGED
|
@@ -1,155 +1,110 @@
|
|
|
1
|
+
````md
|
|
1
2
|
<p align="center">
|
|
2
|
-
<img src="https://res-console.cloudinary.com/dpbwcdytl/thumbnails/v1/image/upload/v1753722770/c3RyaXZ1aV9sb2dvX2syZHhicQ==/drilldown" width="
|
|
3
|
+
<img src="https://res-console.cloudinary.com/dpbwcdytl/thumbnails/v1/image/upload/v1753722770/c3RyaXZ1aV9sb2dvX2syZHhicQ==/drilldown" width="200" alt="StrivUI Logo" />
|
|
3
4
|
</p>
|
|
4
5
|
|
|
6
|
+
<h1 align="center">StrivUI</h1>
|
|
5
7
|
|
|
6
|
-
|
|
8
|
+
<p align="center">
|
|
9
|
+
A hybrid, utility-first React component system inspired by React Native primitives.<br/>
|
|
10
|
+
TypeScript • Atomic CSS • Tree-shakable • Minimal runtime
|
|
11
|
+
</p>
|
|
7
12
|
|
|
8
|
-
|
|
13
|
+
---
|
|
9
14
|
|
|
10
|
-
|
|
15
|
+
## Overview
|
|
11
16
|
|
|
12
|
-
|
|
17
|
+
StrivUI provides a unified component model for building React applications with the
|
|
18
|
+
ergonomics of **React Native primitives** and the structure of **modern web layouts**.
|
|
13
19
|
|
|
14
|
-
|
|
20
|
+
It is designed to deliver:
|
|
15
21
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
* 🛠️ Built with TypeScript — safe and scalable
|
|
21
|
-
* 💻 Lightweight and blazing fast
|
|
22
|
+
- A consistent cross-platform mental model
|
|
23
|
+
- Composable, atomic styling with zero configuration
|
|
24
|
+
- Strict TypeScript support across all public APIs
|
|
25
|
+
- Lightweight, tree-shakable bundles
|
|
22
26
|
|
|
23
|
-
|
|
27
|
+
The library focuses on predictable composition, sensible defaults, and full
|
|
28
|
+
`className` extensibility rather than heavy theming abstractions.
|
|
24
29
|
|
|
25
|
-
|
|
30
|
+
---
|
|
26
31
|
|
|
27
|
-
|
|
32
|
+
## Installation
|
|
28
33
|
|
|
29
34
|
```bash
|
|
30
35
|
npm install strivui
|
|
31
|
-
|
|
32
|
-
comingSoon-> yarn add strivui
|
|
33
|
-
```
|
|
36
|
+
````
|
|
34
37
|
|
|
35
38
|
---
|
|
36
39
|
|
|
37
|
-
##
|
|
38
|
-
|
|
39
|
-
### JavaScript
|
|
40
|
-
|
|
41
|
-
```jsx
|
|
42
|
-
import { Button } from 'strivui';
|
|
43
|
-
|
|
44
|
-
function App() {
|
|
45
|
-
return <Button className="bg-blue-500 text-white px-4 py-2 rounded hover:bg-blue-400">Click Me</Button>;
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### TypeScript
|
|
40
|
+
## Usage
|
|
50
41
|
|
|
51
42
|
```tsx
|
|
52
|
-
import { Button } from
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return
|
|
56
|
-
|
|
43
|
+
import { Button } from "strivui";
|
|
44
|
+
|
|
45
|
+
export function App() {
|
|
46
|
+
return (
|
|
47
|
+
<Button className="bg-blue-500 text-white px-4 py-2 rounded">
|
|
48
|
+
Click me
|
|
49
|
+
</Button>
|
|
50
|
+
);
|
|
51
|
+
}
|
|
57
52
|
```
|
|
58
53
|
|
|
59
54
|
---
|
|
60
55
|
|
|
61
|
-
##
|
|
56
|
+
## Component Architecture
|
|
62
57
|
|
|
63
|
-
|
|
58
|
+
**Primitives**
|
|
59
|
+
`View` · `Text` · `ScrollView` · `Pressable` · `FlatList` · `Image`
|
|
64
60
|
|
|
65
|
-
|
|
61
|
+
**Layout**
|
|
62
|
+
`Header` · `Section` · `Container` · `Card` · `Navigation`
|
|
66
63
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
* `<ScrollView />`
|
|
70
|
-
* `<Pressable />`
|
|
71
|
-
* `<TouchableOpacity />`
|
|
72
|
-
* `<FlatList />`
|
|
73
|
-
* `<SectionList />`
|
|
74
|
-
* `<Image />`
|
|
75
|
-
* `<ImageBackground />`
|
|
76
|
-
* `<ActivityIndicator />`
|
|
64
|
+
**UI**
|
|
65
|
+
`Button` · `Input` · `Select` · `Modal` · `Dialog` · `Table`
|
|
77
66
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
### 🔵 Web Layout Components
|
|
81
|
-
|
|
82
|
-
Semantic elements for responsive structure:
|
|
83
|
-
|
|
84
|
-
* `<Header />`
|
|
85
|
-
* `<Footer />`
|
|
86
|
-
* `<Main />`
|
|
87
|
-
* `<Section />`
|
|
88
|
-
* `<Navigation />`
|
|
89
|
-
* `<Container />`
|
|
90
|
-
* `<Card />`
|
|
67
|
+
Each layer is independently importable and optimized for tree-shaking.
|
|
91
68
|
|
|
92
69
|
---
|
|
93
70
|
|
|
94
|
-
|
|
71
|
+
## Styling Model
|
|
95
72
|
|
|
96
|
-
|
|
73
|
+
StrivUI uses an **atomic, utility-first CSS approach**:
|
|
97
74
|
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
* `<Link />`
|
|
103
|
-
* `<Modal />`
|
|
104
|
-
* `<Dialog />`
|
|
105
|
-
* `<Overlay />`
|
|
106
|
-
* `<Table />`, `<TableHead />`, `<TableBody />`, `<TableRow />`, `<TableHeaderCell />`, `<TableDataCell />`
|
|
75
|
+
* Single-purpose utility classes
|
|
76
|
+
* Deterministic composition
|
|
77
|
+
* No runtime style generation
|
|
78
|
+
* Seamless integration with existing design systems
|
|
107
79
|
|
|
108
80
|
---
|
|
109
81
|
|
|
110
|
-
##
|
|
82
|
+
## TypeScript
|
|
111
83
|
|
|
112
|
-
StrivUI
|
|
113
|
-
|
|
114
|
-
> Coming soon: `strive.config.js` for overriding design tokens like colors, spacing, font scale, and variants.
|
|
84
|
+
StrivUI is **TypeScript-first** and ships with complete declaration files for all
|
|
85
|
+
public exports, ensuring accurate IntelliSense and type safety.
|
|
115
86
|
|
|
116
87
|
---
|
|
117
88
|
|
|
118
|
-
##
|
|
119
|
-
|
|
120
|
-
Full documentation and interactive previews will be available at:
|
|
89
|
+
## Roadmap
|
|
121
90
|
|
|
122
|
-
|
|
91
|
+
* Token-based theming (`striv.config.js`)
|
|
92
|
+
* Dark mode primitives
|
|
93
|
+
* Animation utilities
|
|
94
|
+
* CLI scaffolding
|
|
95
|
+
* SSR / RSC compatibility
|
|
123
96
|
|
|
124
97
|
---
|
|
125
98
|
|
|
126
|
-
##
|
|
99
|
+
## License
|
|
127
100
|
|
|
128
|
-
|
|
101
|
+
MIT © Syed Abdullah Ali
|
|
129
102
|
|
|
130
|
-
```bash
|
|
131
|
-
git clone https://github.com/syedabdullahali/StrivUI.git
|
|
132
|
-
cd StrivUI
|
|
133
|
-
npm install
|
|
134
|
-
npm run dev
|
|
135
103
|
```
|
|
136
104
|
|
|
137
105
|
---
|
|
138
106
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
1. Fork the repo
|
|
144
|
-
2. Create your feature branch: `git checkout -b feature/my-component`
|
|
145
|
-
3. Commit your changes: `git commit -m 'Add my component'`
|
|
146
|
-
4. Push to GitHub: `git push origin feature/my-component`
|
|
147
|
-
5. Open a Pull Request 🚀
|
|
148
|
-
|
|
149
|
-
---
|
|
150
|
-
|
|
151
|
-
## 📄 License
|
|
152
|
-
|
|
153
|
-
MIT © 2025 [Syed Abdullah Ali](https://github.com/syedabdullahali)
|
|
154
|
-
|
|
155
|
-
---
|
|
107
|
+
If you want, I can next add a **“Philosophy” section (very short)** that explains:
|
|
108
|
+
> “No runtime styling, no heavy context providers, just composable primitives”
|
|
109
|
+
That makes it sound **very senior / systems-level** like Radix, Ark UI, or Tamagui.
|
|
110
|
+
```
|