zuii 0.0.1 → 1.1.0

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
@@ -30,3 +30,7 @@ npm install zuii
30
30
  Le développement de **zuii** est structuré en plusieurs phases. Vous pouvez suivre l'avancement détaillé dans notre fichier dédié :
31
31
 
32
32
  👉 **[Consulter la Roadmap complète](ROADMAP.md)**
33
+
34
+ ## 📝 Changelog
35
+
36
+ 👉 **[Consulter le changelog](CHANGELOG.md)**
@@ -0,0 +1,6 @@
1
+ export interface ButtonConfig {
2
+ label: string;
3
+ variant?: 'primary' | 'secondary';
4
+ onClick?: () => void;
5
+ }
6
+ export declare const renderButton: (config: ButtonConfig) => HTMLElement;
@@ -0,0 +1,7 @@
1
+ const n = (t) => {
2
+ const e = document.createElement("button");
3
+ return e.innerText = t.label, e.classList.add("z-btn"), t.variant && e.classList.add(`is-${t.variant}`), t.onClick && e.addEventListener("click", t.onClick), e;
4
+ };
5
+ export {
6
+ n as renderButton
7
+ };
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+ import { ButtonConfig } from '../js/Button';
3
+ export declare const ZButton: React.FC<ButtonConfig>;
@@ -0,0 +1,17 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import { useRef as o, useEffect as i } from "react";
3
+ import { renderButton as c } from "../js/Button.js";
4
+ import '../style/button.css';/* empty css */
5
+ const p = (r) => {
6
+ const t = o(null);
7
+ return i(() => {
8
+ if (t.current) {
9
+ t.current.innerHTML = "";
10
+ const n = c(r);
11
+ t.current.appendChild(n);
12
+ }
13
+ }, [r]), /* @__PURE__ */ e("div", { ref: t, style: { display: "contents" } });
14
+ };
15
+ export {
16
+ p as ZButton
17
+ };
@@ -0,0 +1 @@
1
+ .z-btn{padding:10px 20px;border:none;border-radius:var(--z-radius-md);background-color:var(--z-primary);color:#fff;transition:background-color var(--z-transition);cursor:pointer}.z-btn:hover{background-color:var(--z-primary-dark)}.z-btn--secondary{background-color:var(--z-secondary)}
@@ -0,0 +1 @@
1
+ :root{--z-primary: #3b82f6;--z-primary-dark: #2563eb;--z-secondary: #64748b;--z-disabled-opacity: .6;--z-transition: .2s ease-in-out;--z-radius-md: 8px;--z-gap: 1rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--z-font-family, "Inter", system-ui, sans-serif)}button{font-family:inherit}
@@ -0,0 +1 @@
1
+ export * from './components/Button/react';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ import './core/styles/main.css';/* empty css */
2
+ import { ZButton as m } from "./components/Button/react/index.js";
3
+ export {
4
+ m as ZButton
5
+ };
package/package.json CHANGED
@@ -1,12 +1,43 @@
1
1
  {
2
- "name": "zuii",
3
- "version": "0.0.1",
4
- "description": "",
5
- "main": "index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "keywords": [],
10
- "author": "Vincent Moreau",
11
- "license": "MIT"
2
+ "name": "zuii",
3
+ "version": "1.1.0",
4
+ "description": "Bibliothèque de composants UI légère, intuitive et modulaire pour les interfaces web modernes.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "files": [
10
+ "dist"
11
+ ],
12
+ "scripts": {
13
+ "dev": "vite",
14
+ "build": "vite build",
15
+ "preview": "vite preview",
16
+ "prepublishOnly": "npm run build"
17
+ },
18
+ "keywords": [],
19
+ "author": "Vincent Moreau",
20
+ "license": "MIT",
21
+ "peerDependencies": {
22
+ "react": ">=16.8.0",
23
+ "react-dom": ">=16.8.0"
24
+ },
25
+ "devDependencies": {
26
+ "@semantic-release/changelog": "^6.0.3",
27
+ "@semantic-release/git": "^10.0.1",
28
+ "@semantic-release/github": "^12.0.2",
29
+ "@semantic-release/npm": "^13.1.3",
30
+ "@types/node": "^25.1.0",
31
+ "@types/react": "^19.2.10",
32
+ "@types/react-dom": "^19.2.3",
33
+ "@vitejs/plugin-react": "^5.1.2",
34
+ "react": "^19.2.4",
35
+ "react-dom": "^19.2.4",
36
+ "sass": "^1.97.3",
37
+ "semantic-release": "^25.0.2",
38
+ "typescript": "^5.9.3",
39
+ "vite": "^7.3.1",
40
+ "vite-plugin-dts": "^4.5.4",
41
+ "vite-plugin-lib-inject-css": "^2.2.2"
42
+ }
12
43
  }
package/ROADMAP.md DELETED
@@ -1,45 +0,0 @@
1
- # 🗺️ Roadmap - zuii
2
-
3
- Ce document détaille la vision à long terme et les étapes de développement de **zuii**.
4
-
5
- ## 🎯 Vision
6
- Proposer l'écosystème UI le plus léger et modulaire du marché, sans compromis sur l'accessibilité ou l'expérience développeur.
7
-
8
- ---
9
-
10
- ## 🏗️ État actuel : Phase 1
11
-
12
- ### 🟢 Phase 1 : Fondations
13
- L'objectif est de poser des bases solides pour la librairie.
14
- - [x] Configuration initiale du projet.
15
- - [x] Architecture de fichiers modulaire.
16
- - [x] Licence MIT.
17
- - [ ] **Design Tokens** : Couleurs, Typographie, Espacement (Variables CSS).
18
- - [ ] **Base Components** :
19
- - [ ] `Button`
20
- - [ ] `Input`
21
- - [ ] `Checkbox`
22
- - [ ] `Radio`
23
-
24
- ### 🟡 Phase 2 : Structure & Layout
25
- - [ ] **Grid System** : Utilitaires Flexbox et Grid.
26
- - [ ] **Layout Components** : `Container`, `Stack`, `Box`.
27
- - [ ] **Navigation** : `Navbar`, `Tabs`, `Breadcrumbs`.
28
-
29
- ### 🔵 Phase 3 : Composants Avancés
30
- - [ ] **Overlays** : `Modal`, `Popovover`, `Tooltip`.
31
- - [ ] **Feedback** : `Toast`, `Alert`, `Spinner`.
32
- - [ ] **Data Display** : `Table`, `Badge`, `Card`.
33
-
34
- ### 🟣 Phase 4 : Écosystème & Qualité
35
- - [ ] **Documentation** : Storybook complet avec exemples interactifs.
36
- - [ ] **Testing** : 100% de couverture sur les composants critiques.
37
- - [ ] **Accessibilité** : Audit WCAG 2.1 complet.
38
- - [ ] **Thématisation** : Support natif du Mode Sombre et thèmes personnalisés.
39
-
40
- ---
41
-
42
- ## 📈 Évolutions futures
43
- - [ ] Intégration optionnelle avec des frameworks (React, Vue).
44
- - [ ] Générateur de thèmes en ligne.
45
- - [ ] Librairie d'icônes dédiée.