Skip to content

Commit b780bba

Browse files
committed
update eslint package name
1 parent 1e1c3a9 commit b780bba

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+405
-1795
lines changed

.github/pull_request_template.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
- [ ] Linting and formatting pass (`pnpm lint && pnpm format`)
2424
- [ ] PR title follows semantic commit format (`feat:`, `fix:`, etc.)
2525
- [ ] Changes are documented (README, JSDoc, or comments if needed)
26-
- [ ] Ready for review not a draft
26+
- [ ] Ready for review - not a draft
2727

2828
---
2929

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@ jobs:
6060
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
6161
run: |
6262
echo "ℹ️ Packages flagged for publish:"
63-
echo "• core ${{ steps.release.outputs['packages/core--release_version'] }}"
64-
echo "• cli ${{ steps.release.outputs['packages/cli--release_version'] }}"
63+
echo "• core ➡️ ${{ steps.release.outputs['packages/core--release_version'] }}"
64+
echo "• cli ➡️ ${{ steps.release.outputs['packages/cli--release_version'] }}"
6565

6666
if [[ '${{ steps.release.outputs['packages/core--release_created'] }}' == 'true' ]]; then
6767
echo "📦 Publishing @react-zero-ui/core…"

.prettierrc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
"bracketSameLine": true,
1313
"embeddedLanguageFormatting": "auto",
1414
"singleAttributePerLine": true
15-
}
15+
}

.release-please-config.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

README.md

Lines changed: 45 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -8,32 +8,30 @@
88
<img width="1000" height="144" alt="Frame 342" src="https://raw.githubusercontent.com/react-zero-ui/core/upgrade/resolver/docs/assets/zero-ui-logo.png" />
99
</p>
1010

11-
1211
<div align="center">
1312
<strong>The fastest possible UI updates in React. Period.</strong>
1413

1514
Zero runtime, zero React re-renders, and the simplest developer experience ever. <small>Say goodbye to context and prop-drilling.</small>
1615

1716
<a href="https://bundlephobia.com/package/@react-zero-ui/[email protected]" target="_blank" rel="noopener noreferrer"><img src="https://badgen.net/bundlephobia/minzip/@react-zero-ui/[email protected]" alt="bundle size" /></a> <a href="https://www.npmjs.com/package/@austinserb/react-zero-ui" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/npm/v/@react-zero-ui/core" alt="npm version" /></a> <a href="https://opensource.org/licenses/MIT" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT" /></a> ![CI](https://github.com/react-zero-ui/core/actions/workflows/ci.yml/badge.svg?branch=main)
1817

19-
20-
[📖 See the proof](/docs/demo) [🚀 Quick Start](#-quick-start) [📚 API Reference](#-api-reference) [🤝 Contributing](#-contributing)
18+
[📖 See the proof](/docs/demo.md) [🚀 Quick Start](#-quick-start) [📚 API Reference](#-api-reference) [🤝 Contributing](#-contributing)
2119

2220
</div>
2321

2422
---
2523

26-
## 🔥 Core Concept: *"Pre-Rendering"*
24+
## 🔥 Core Concept: _"Pre-Rendering"_
2725

2826
Why re-render UI if all states are known at build time? React Zero-UI **pre-renders** UI states once ( at no runtime cost ), and flips `data-*` attribute to update - that's it.
2927

30-
**Example:**
28+
**Example:**
3129

3230
```tsx
33-
const [, setTheme] = useUI("theme", "dark");
31+
const [, setTheme] = useUI('theme', 'dark');
3432

3533
// Flip theme to "light"
36-
setTheme("light"); // data-theme="light" on body
34+
setTheme('light'); // data-theme="light" on body
3735
```
3836

3937
**Tailwind usage:** <small>Anywhere in your app</small>
@@ -48,21 +46,21 @@ setTheme("light"); // data-theme="light" on body
4846

4947
React Zero-UI uses a hyper-optimized AST resolver in development that scans your codebase for:
5048

51-
* `useUI` and `useScopedUI` hook usage.
52-
* Any variables resolving to strings (e.g., `'theme'`, `'modal-open'`).
53-
* Tailwind variant classes (e.g. `theme-dark:bg-black`).
49+
- `useUI` and `useScopedUI` hook usage.
50+
- Any variables resolving to strings (e.g., `'theme'`, `'modal-open'`).
51+
- Tailwind variant classes (e.g. `theme-dark:bg-black`).
5452

5553
**This generates:**
5654

57-
* Optimal CSS with global or scoped variant selectors.
58-
* Initial data-attributes injected onto the body (zero FOUC).
59-
* UI state with ease, no prop-drilling.
60-
* **Zero runtime overhead in production**.
61-
55+
- Optimal CSS with global or scoped variant selectors.
56+
- Initial data-attributes injected onto the body (zero FOUC).
57+
- UI state with ease, no prop-drilling.
58+
- **Zero runtime overhead in production**.
6259

6360
---
6461

6562
## 🚀 Quick Start
63+
6664
<small>Zero-UI CLI</small>
6765

6866
**Pre-requisites:** <small>Vite or Next.js (App Router)</small>
@@ -72,7 +70,7 @@ npx create-zero-ui
7270
```
7371

7472
> For manual configuration, see [Next JS Installation](/docs/installation-next.md)
75-
> [Vite Installation](/docs/installation-vite.md)
73+
> [Vite Installation](/docs/installation-vite.md)
7674
7775
**That's it.** Start your app and see the magic.
7876

@@ -86,30 +84,26 @@ npx create-zero-ui
8684
const [<staleValue>, <setterFunction>] = useUI(<stateKey>, <defaultValue>);
8785
```
8886

89-
- `stateKey` ➡️ becomes `data-{stateKey}` on `<body>`.
90-
- `defaultValue` ➡️ SSR, prevents FOUC.
91-
- `staleValue` ➡️ For scoped UI, set the data-* to the `staleValue` to prevent FOUC.
87+
- `stateKey` ➡️ becomes `data-{stateKey}` on `<body>`.
88+
- `defaultValue` ➡️ SSR, prevents FOUC.
89+
- `staleValue` ➡️ For scoped UI, set the data-\* to the `staleValue` to prevent FOUC.
9290
- **Note:** the returned `staleValue` does **not** update (`useUI` is write‑only).
9391

94-
95-
96-
97-
98-
9992
### 🔨 `useUI` Hook (Global UI State)
10093

10194
Simple hook mirroring React's `useState`:
10295

10396
```tsx
10497
import { useUI } from '@react-zero-ui/core';
10598

106-
const [theme, setTheme] = useUI("theme", "dark");
99+
const [theme, setTheme] = useUI('theme', 'dark');
107100
```
108101

109102
**Features:**
110-
* Flips global `data-theme` attribute on `<body>`.
111-
* Zero React re-renders.
112-
* Global UI state available anywhere in your app through tailwind variants.
103+
104+
- Flips global `data-theme` attribute on `<body>`.
105+
- Zero React re-renders.
106+
- Global UI state available anywhere in your app through tailwind variants.
113107

114108
---
115109

@@ -123,7 +117,7 @@ Control UI states at the element-level:
123117
const [theme, setTheme] = useScopedUI("theme", "dark");
124118

125119
// ❗️Flips data-* on the specific ref element
126-
+ <div ref={setTheme.ref}
120+
+ <div ref={setTheme.ref}
127121
// ❗️set the data-* to the staleValue to prevent FOUC
128122
+ data-theme={theme}
129123
>
@@ -132,9 +126,10 @@ const [theme, setTheme] = useScopedUI("theme", "dark");
132126
```
133127

134128
**Features:**
135-
* Data-* flips on specific target element.
136-
* Generates scoped CSS selectors only applying within the target element.
137-
* No FOUC, no re-renders.
129+
130+
- Data-\* flips on specific target element.
131+
- Generates scoped CSS selectors only applying within the target element.
132+
- No FOUC, no re-renders.
138133

139134
---
140135

@@ -145,29 +140,32 @@ Sometimes CSS variables are more efficient. React Zero-UI makes it trivial by pa
145140
```tsx
146141
useUI(<cssVariable>, <defaultValue>, CssVar); // ❗️Pass CssVar to either hook to use CSS variables
147142
```
143+
148144
<small>automatically adds `--` to the cssVariable</small>
149145

150146
**Global CSS Variable:**
147+
151148
```diff
152149
+ import { CssVar } from '@react-zero-ui/core';
153150
```
154151

155152
```tsx
156-
const [blur, setBlur] = useUI("blur", "0px", CssVar);
157-
setBlur("5px"); // body { --blur: 5px }
153+
const [blur, setBlur] = useUI('blur', '0px', CssVar);
154+
setBlur('5px'); // body { --blur: 5px }
158155
```
159156

160157
**Scoped CSS Variable:**
158+
161159
```tsx
162-
const [blur, setBlur] = useScopedUI("blur", "0px", CssVar);
160+
const [blur, setBlur] = useScopedUI('blur', '0px', CssVar);
163161

164-
<div ref={setBlur.ref} style={{ "--blur": blur }}>
165-
Scoped blur effect.
166-
</div>
162+
<div
163+
ref={setBlur.ref}
164+
style={{ '--blur': blur }}>
165+
Scoped blur effect.
166+
</div>;
167167
```
168168

169-
170-
171169
---
172170

173171
## 🧪 Experimental Features
@@ -183,11 +181,11 @@ See [experimental](./docs/assets/experimental.md) for more details.
183181

184182
## 📦 Summary of Benefits
185183

186-
* **🚀 Zero React re-renders:** Pure CSS-driven UI state.
187-
* **⚡️ Pre-rendered UI:** All states injected at build-time and only loaded when needed.
188-
* **📦 Tiny footprint:** <350 bytes, zero runtime overhead for CSS states.
189-
* **💫 Amazing DX:** Simple hooks, auto-generated Tailwind variants.
190-
* **⚙️ Highly optimized AST resolver:** Fast, cached build process.
184+
- **🚀 Zero React re-renders:** Pure CSS-driven UI state.
185+
- **⚡️ Pre-rendered UI:** All states injected at build-time and only loaded when needed.
186+
- **📦 Tiny footprint:** <350 bytes, zero runtime overhead for CSS states.
187+
- **💫 Amazing DX:** Simple hooks, auto-generated Tailwind variants.
188+
- **⚙️ Highly optimized AST resolver:** Fast, cached build process.
191189

192190
React Zero-UI delivers the fastest, simplest, most performant way to handle global and scoped UI state in modern React applications. Say goodbye to re-renders and prop-drilling.
193191

@@ -200,6 +198,7 @@ React Zero-UI delivers the fastest, simplest, most performant way to handle glob
200198
We welcome contributions from the community! Whether it's bug fixes, feature requests, documentation improvements, or performance optimizations - every contribution helps make React Zero-UI better.
201199

202200
**Get involved:**
201+
203202
- 🐛 Found a bug? [Open an issue](https://github.com/react-zero-ui/core/issues)
204203
- 💡 Have an idea? [Start a discussion](https://github.com/react-zero-ui/core/discussions)
205204
- 🔧 Want to contribute code? Check out our [**Contributing Guide**](/docs/CONTRIBUTING.md)
@@ -212,4 +211,4 @@ We welcome contributions from the community! Whether it's bug fixes, feature req
212211

213212
Made with ❤️ for the React community by [@austin1serb](https://github.com/austin1serb)
214213

215-
</div>
214+
</div>

docs/CONTRIBUTING.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Contributing to React Zero-UI
22

3-
**Thanks for stopping by.** This project exists because builders like you push boundaries. If you're here to experiment, break things, or ship speed you're in the right place.
3+
**Thanks for stopping by.** This project exists because builders like you push boundaries. If you're here to experiment, break things, or ship speed - you're in the right place.
44

55
---
66

@@ -11,7 +11,7 @@
1111
> UI state should not require re-rendering.
1212
> CSS and `data-*` attributes can be enough.
1313
14-
It's fast because it **skips the VDOM entirely** no state triggers, no diffing, no component redraws.
14+
It's fast because it **skips the VDOM entirely** - no state triggers, no diffing, no component redraws.
1515

1616
### If you contribute:
1717

@@ -22,9 +22,10 @@ Stay **pre-rendered, declarative, and brutally fast.**
2222
## 🧠 Monorepo Structure
2323

2424
```
25-
packages/
26-
├── core → @react-zero-ui/core (library logic + postcss)
27-
└── cli → create-zero-ui (npx installer)
25+
📁 packages/
26+
├── core ➡️ @react-zero-ui/core (library logic + postcss)
27+
├── cli ➡️ create-zero-ui (npx installer)
28+
└── eslint-zero-ui ➡️ eslint-zero-ui - in development
2829
```
2930

3031
---
@@ -51,15 +52,15 @@ For questions, proposals, or early feedback. Share ideas before building.
5152

5253
Use the templates.
5354

54-
- **Bug** Include steps to reproduce, expected vs. actual behavior.
55-
- **Feature** Explain the _why_, and sketch a possible approach.
55+
- **Bug** ➡️ Include steps to reproduce, expected vs. actual behavior.
56+
- **Feature** ➡️ Explain the _why_, and sketch a possible approach.
5657

5758
### 3. Pull Requests
5859

5960
- Use semantic commit prefixes: `feat:`, `fix:`, `chore:`, `refactor:`
6061
- Add tests if you touch logic, CLI, or rendering behavior.
61-
- Keep PRs focused one change per pull.
62-
- Fill out the PR template no empty descriptions.
62+
- Keep PRs focused - one change per pull.
63+
- Fill out the PR template - no empty descriptions.
6364

6465
---
6566

@@ -78,7 +79,7 @@ pnpm test # Runs all of the above
7879

7980
## 🤝 Code of Conduct
8081

81-
Keep it respectful, accessible. Push ideas hard, not people.
82+
Keep it respectful and accessible. Push ideas hard, not people.
8283

8384
---
8485

docs/demo.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Experience the difference between React re-renders and Zero-UI's instant updates
1515
## 🎯 Interactive Examples
1616

1717
| Demo | Description | Live Link | Source Code |
18-
|------|-------------|-----------|-------------|
18+
| -- | -- | -- | -- |
1919
| **🎛️ Interactive Menu** | Side-by-side comparison with render tracker | [Main Demo](https://zero-ui.dev/) | [GitHub](https://zero-ui.dev/react) |
2020
| **⚛️ React Benchmark** | Traditional React render path (10k nodes) | [React 10k](https://zero-ui.dev/react) | [GitHub](https://github.com/react-zero-ui/core/tree/main/examples/demo/src/app/react) |
2121
| **⚡️ Zero-UI Benchmark** | Identical DOM with `data-*` switching (10k nodes) | [Zero-UI 10k](https://zero-ui.dev/zero-ui) | [GitHub](https://github.com/react-zero-ui/core/tree/main/examples/demo/src/app/zero-ui) |
@@ -26,12 +26,12 @@ Experience the difference between React re-renders and Zero-UI's instant updates
2626

2727
## 🧐 Why Zero-UI?
2828

29-
Every `setState` in React triggers the full **VDOM Diff Reconciliation Paint** pipeline. For _pure UI state_ (themes, menus, toggles) **that work is wasted**.
29+
Every `setState` in React triggers the full **VDOM ➡️ Diff ➡️ Reconciliation ➡️ Paint** pipeline. For _pure UI state_ (themes, menus, toggles) **that work is wasted**.
3030

3131
### 🔄 Zero-UI's "PRE-rendering" Approach:
3232

3333
1. **🏗️ Build-time:** Tailwind variants generated for every state
34-
2. **🎨 Pre-render:** App renders once with all possible states
34+
2. **🎨 Pre-render:** App renders once with all possible states
3535
3. **⚡️ Runtime:** State changes only flip a `data-*` attribute
3636

3737
**Result:** **5-10× faster visual updates** with **ZERO additional bundle cost**.
@@ -42,15 +42,15 @@ Every `setState` in React triggers the full **VDOM → Diff → Reconciliation
4242

4343
<div align="center">
4444

45-
*Tested on Apple M1 - Chrome DevTools Performance Tab*
45+
_Tested on Apple M1 - Chrome DevTools Performance Tab_
4646

4747
</div>
4848

4949
| **Nodes Updated** | **React State** | **Zero-UI** | **Speed Improvement** |
50-
|:-----------------:|:---------------:|:-----------:|:--------------------:|
50+
| :--: | :--: | :--: | :--: |
5151
| 10,000 | ~50 ms | ~5 ms | **🚀 10× faster** |
5252
| 25,000 | ~180 ms | ~15 ms | **🚀 12× faster** |
53-
| 50,000 | ~300 ms | ~20 ms | **🚀 15× faster** |
53+
| 50,000 | ~300 ms | ~20 ms | **🚀 15× faster** |
5454

5555
> **🔬 Try it yourself:** Re-run these benchmarks using the demo links above with Chrome DevTools.
5656
@@ -62,4 +62,4 @@ Every `setState` in React triggers the full **VDOM → Diff → Reconciliation
6262

6363
[**🚀 Get Started**](https://github.com/react-zero-ui/core/#-quick-start) and never re-render again.
6464

65-
</div>
65+
</div>

0 commit comments

Comments
 (0)