dolphincss 1.3.4 → 1.3.7
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 +247 -148
- package/core-templates/dolphin-file-tree.html +152 -0
- package/dist/assets/css-DgFYAglH.css +1 -0
- package/dist/assets/main-DcIhIwoX.css +1 -0
- package/dist/index.html +1 -1
- package/dist/index.js +18 -8
- package/dolphin-css.css +2 -2
- package/marker.json +4 -0
- package/package.json +7 -3
- package/src/ub-vanilla.js +1077 -0
- package/src/ub.js +1119 -0
- package/dist/assets/main-Dq63J6M8.css +0 -1
package/README.md
CHANGED
|
@@ -1,159 +1,259 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<h1
|
|
3
|
-
<p><strong>A Next-Generation UI Library for React + TailwindCSS</strong></p>
|
|
4
|
-
<p><em>Where Magic Component Generation meets Beautiful Global Classes.</em></p>
|
|
5
|
-
</div>
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
DolphinCSS is not just another CSS framework. It fundamentally reimagines how developers build UI by combining the extreme customizability of **TailwindCSS**, the simplicity of **Bootstrap's Global Classes**, and an unprecedented **Vite-powered Magic Component Generator**.
|
|
10
|
-
|
|
11
|
-
Say goodbye to heavy vendor lock-ins (MUI, AntD) and tedious CLI commands (Shadcn UI).
|
|
12
|
-
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
### 1.
|
|
16
|
-
We loved the idea of Shadcn giving you ownership of the code, but hated running CLI commands for every single component.
|
|
17
|
-
|
|
18
|
-
With DolphinCSS, **you never touch the terminal.** Just type a magic class in your editor and save:
|
|
19
|
-
|
|
20
|
-
```jsx
|
|
21
|
-
// 1. You type this in your App.jsx:
|
|
22
|
-
<div className="dolphin-card"></div>
|
|
23
|
-
|
|
24
|
-
// 2. You hit Save (Ctrl+S)
|
|
25
|
-
|
|
26
|
-
// 3.
|
|
27
|
-
<div className="glass card p-6 border border-white/20 rounded-2xl max-w-sm hover:shadow-xl hover:-translate-y-1 transition-all duration-300 relative overflow-hidden" style={{ backdropFilter: 'blur(20px)' }}>
|
|
28
|
-
{/* Full customizable code is now YOURS */}
|
|
29
|
-
</div>
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### 2.
|
|
33
|
-
Tired of writing 20 utility classes for a single button? DolphinCSS brings back the simplicity of Global Classes, but with breathtaking modern aesthetics (Glassmorphism, Neon Glows).
|
|
34
|
-
|
|
35
|
-
```jsx
|
|
36
|
-
/* The Tailwind Way (Messy) */
|
|
37
|
-
<button className="px-6 py-2 bg-blue-500 hover:bg-blue-600 text-white font-bold rounded-lg shadow-lg shadow-blue-500/50 transition-all">
|
|
38
|
-
Click
|
|
39
|
-
</button>
|
|
40
|
-
|
|
41
|
-
/* The DolphinCSS Way (Clean & Global) */
|
|
42
|
-
<button className="filled primary-500 glow btn-lg">
|
|
43
|
-
Click
|
|
44
|
-
</button>
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### 3.
|
|
48
|
-
Classes in DolphinCSS are designed to stack perfectly. Combine background colors, gradients, glows, and animations endlessly without conflicts!
|
|
49
|
-
|
|
50
|
-
```jsx
|
|
51
|
-
// Combine classes to create complex, animated, glowing UI instantly:
|
|
52
|
-
<button className="filled success gradient glow glow-pulse rounded-full">
|
|
53
|
-
I am a Glowing, Pulsing, Gradient Green Button!
|
|
54
|
-
</button>
|
|
55
|
-
|
|
56
|
-
// Create a frosted glass overlay with a dark tint:
|
|
57
|
-
<div className="overlay overlay-blur-xl overlay-dark-50"></div>
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### 4.
|
|
61
|
-
No need for `framer-motion` or `animate.css`. DolphinCSS ships with a complete `@layer utilities` animation engine that you can drop on any HTML element.
|
|
62
|
-
|
|
63
|
-
- **Continuous:** `float`, `spin-slow`, `pulse`, `bounce`, `shimmer`, `gradient-flow`, `neon-flicker`
|
|
64
|
-
- **Hover:** `hover-pulse`, `hover-jelly`, `hover-glow`, `hover-ripple`
|
|
65
|
-
- **Entrance:** `fade-in`, `slide-up`, `zoom-in`, `rotate-3d`
|
|
66
|
-
- **Controls:** `delay-200`, `duration-500`
|
|
67
|
-
|
|
68
|
-
```jsx
|
|
69
|
-
<img src="logo.png" className="float hover-jelly fade-in delay-200" />
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
##
|
|
75
|
-
|
|
76
|
-
1. **Install via npm:**
|
|
77
|
-
```bash
|
|
78
|
-
npm install tailwindcss @tailwindcss/vite dolphincss lucide-react
|
|
79
|
-
```
|
|
80
|
-
*(Note: `lucide-react` is required because the generated magic components use these beautiful icons by default.)*
|
|
81
|
-
|
|
82
|
-
2. **Add the Plugins:** (In `vite.config.js`)
|
|
83
|
-
```javascript
|
|
84
|
-
import { defineConfig } from 'vite'
|
|
85
|
-
import react from '@vitejs/plugin-react'
|
|
86
|
-
import tailwindcss from '@tailwindcss/vite'
|
|
87
|
-
import dolphincssPlugin from 'dolphincss/vite-plugin'
|
|
88
|
-
|
|
89
|
-
export default defineConfig({
|
|
90
|
-
plugins: [react(), tailwindcss(), dolphincssPlugin()]
|
|
91
|
-
})
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
3. **Import Styles:** (In your main `main.jsx` or `index.css`)
|
|
95
|
-
```javascript
|
|
96
|
-
import 'dolphincss/dolphin-css.css';
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
##
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
<h1>🐬 DolphinCSS</h1>
|
|
3
|
+
<p><strong>A Next-Generation UI Library for React + TailwindCSS</strong></p>
|
|
4
|
+
<p><em>Where Magic Component Generation meets Beautiful Global Classes.</em></p>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
DolphinCSS is not just another CSS framework. It fundamentally reimagines how developers build UI by combining the extreme customizability of **TailwindCSS**, the simplicity of **Bootstrap's Global Classes**, and an unprecedented **Vite-powered Magic Component Generator**.
|
|
10
|
+
|
|
11
|
+
Say goodbye to heavy vendor lock-ins (MUI, AntD) and tedious CLI commands (Shadcn UI).
|
|
12
|
+
|
|
13
|
+
## ⚡ The 4 Unique Superpowers
|
|
14
|
+
|
|
15
|
+
### 1. 🪄 Magic Component Generation (Zero CLI)
|
|
16
|
+
We loved the idea of Shadcn giving you ownership of the code, but hated running CLI commands for every single component.
|
|
17
|
+
|
|
18
|
+
With DolphinCSS, **you never touch the terminal.** Just type a magic class in your editor and save:
|
|
19
|
+
|
|
20
|
+
```jsx
|
|
21
|
+
// 1. You type this in your App.jsx:
|
|
22
|
+
<div className="dolphin-card"></div>
|
|
23
|
+
|
|
24
|
+
// 2. You hit Save (Ctrl+S)
|
|
25
|
+
|
|
26
|
+
// 3. 🪄 MAGIC! Vite instantly replaces that line IN YOUR FILE with the full React Component code!
|
|
27
|
+
<div className="glass card p-6 border border-white/20 rounded-2xl max-w-sm hover:shadow-xl hover:-translate-y-1 transition-all duration-300 relative overflow-hidden" style={{ backdropFilter: 'blur(20px)' }}>
|
|
28
|
+
{/* Full customizable code is now YOURS */}
|
|
29
|
+
</div>
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### 2. 🌐 High-Level Global Classes
|
|
33
|
+
Tired of writing 20 utility classes for a single button? DolphinCSS brings back the simplicity of Global Classes, but with breathtaking modern aesthetics (Glassmorphism, Neon Glows).
|
|
34
|
+
|
|
35
|
+
```jsx
|
|
36
|
+
/* The Tailwind Way (Messy) */
|
|
37
|
+
<button className="px-6 py-2 bg-blue-500 hover:bg-blue-600 text-white font-bold rounded-lg shadow-lg shadow-blue-500/50 transition-all">
|
|
38
|
+
Click
|
|
39
|
+
</button>
|
|
40
|
+
|
|
41
|
+
/* The DolphinCSS Way (Clean & Global) */
|
|
42
|
+
<button className="filled primary-500 glow btn-lg">
|
|
43
|
+
Click
|
|
44
|
+
</button>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 3. 🧩 Infinite Class Composability (Nesting)
|
|
48
|
+
Classes in DolphinCSS are designed to stack perfectly. Combine background colors, gradients, glows, and animations endlessly without conflicts!
|
|
49
|
+
|
|
50
|
+
```jsx
|
|
51
|
+
// Combine classes to create complex, animated, glowing UI instantly:
|
|
52
|
+
<button className="filled success gradient glow glow-pulse rounded-full">
|
|
53
|
+
I am a Glowing, Pulsing, Gradient Green Button!
|
|
54
|
+
</button>
|
|
55
|
+
|
|
56
|
+
// Create a frosted glass overlay with a dark tint:
|
|
57
|
+
<div className="overlay overlay-blur-xl overlay-dark-50"></div>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 4. 🎬 World-Class Built-in Animations
|
|
61
|
+
No need for `framer-motion` or `animate.css`. DolphinCSS ships with a complete `@layer utilities` animation engine that you can drop on any HTML element.
|
|
62
|
+
|
|
63
|
+
- **Continuous:** `float`, `spin-slow`, `pulse`, `bounce`, `shimmer`, `gradient-flow`, `neon-flicker`
|
|
64
|
+
- **Hover:** `hover-pulse`, `hover-jelly`, `hover-glow`, `hover-ripple`
|
|
65
|
+
- **Entrance:** `fade-in`, `slide-up`, `zoom-in`, `rotate-3d`
|
|
66
|
+
- **Controls:** `delay-200`, `duration-500`
|
|
67
|
+
|
|
68
|
+
```jsx
|
|
69
|
+
<img src="logo.png" className="float hover-jelly fade-in delay-200" />
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## ⚙️ Installation & Setup
|
|
75
|
+
|
|
76
|
+
1. **Install via npm:**
|
|
77
|
+
```bash
|
|
78
|
+
npm install tailwindcss @tailwindcss/vite dolphincss lucide-react
|
|
79
|
+
```
|
|
80
|
+
*(Note: `lucide-react` is required because the generated magic components use these beautiful icons by default.)*
|
|
81
|
+
|
|
82
|
+
2. **Add the Plugins:** (In `vite.config.js`)
|
|
83
|
+
```javascript
|
|
84
|
+
import { defineConfig } from 'vite'
|
|
85
|
+
import react from '@vitejs/plugin-react'
|
|
86
|
+
import tailwindcss from '@tailwindcss/vite'
|
|
87
|
+
import dolphincssPlugin from 'dolphincss/vite-plugin'
|
|
88
|
+
|
|
89
|
+
export default defineConfig({
|
|
90
|
+
plugins: [react(), tailwindcss(), dolphincssPlugin()]
|
|
91
|
+
})
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
3. **Import Styles:** (In your main `main.jsx` or `index.css`)
|
|
95
|
+
```javascript
|
|
96
|
+
import 'dolphincss/dolphin-css.css';
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## 🛜 Offline & CDN Usage
|
|
102
|
+
|
|
103
|
+
For static HTML pages or offline projects, you can use the minified files directly without npm/Node.js setup.
|
|
104
|
+
|
|
105
|
+
### 1. CDN Links (jsDelivr)
|
|
106
|
+
Include these links directly in your HTML for zero-install setup:
|
|
107
|
+
* **CSS (Global Styles & Animations):**
|
|
108
|
+
```html
|
|
109
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/dolphincss@latest/dolphin-css.css">
|
|
110
|
+
```
|
|
111
|
+
* **JS (Vanilla Utility Builder):**
|
|
112
|
+
```html
|
|
113
|
+
<script src="https://cdn.jsdelivr.net/npm/dolphincss@latest/src/ub-vanilla.js"></script>
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 2. Download Commands (For Offline Usage)
|
|
117
|
+
Run these commands in your project folder to download the files locally:
|
|
118
|
+
|
|
119
|
+
#### Using `curl`:
|
|
120
|
+
```bash
|
|
121
|
+
# Download CSS
|
|
122
|
+
curl -o dolphin-css.min.css https://cdn.jsdelivr.net/npm/dolphincss@latest/dolphin-css.css
|
|
123
|
+
|
|
124
|
+
# Download Vanilla Utility Builder JS
|
|
125
|
+
curl -o ub-vanilla.min.js https://cdn.jsdelivr.net/npm/dolphincss@latest/src/ub-vanilla.js
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
#### Using `wget`:
|
|
129
|
+
```bash
|
|
130
|
+
# Download CSS
|
|
131
|
+
wget -O dolphin-css.min.css https://cdn.jsdelivr.net/npm/dolphincss@latest/dolphin-css.css
|
|
132
|
+
|
|
133
|
+
# Download Vanilla Utility Builder JS
|
|
134
|
+
wget -O ub-vanilla.min.js https://cdn.jsdelivr.net/npm/dolphincss@latest/src/ub-vanilla.js
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## 🧠 IoT-CSS & Dynamic OKLCH Engine (`dolphincss/ub`)
|
|
140
|
+
|
|
141
|
+
DolphinCSS includes a revolutionary runtime style engine called **`ub`** (Utility Builder). It allows you to generate mathematically computed OKLCH shades (0-255 scaling) and gradients on the fly, with native browser styling speed, O(1) LRU class caching, and automatic text contrast adjustments.
|
|
142
|
+
|
|
143
|
+
This is perfect for IoT dashboards, sensor data representations, dynamic configurations, or Tailwind CSS co-existence (allowing Tailwind users to blend their classes seamlessly).
|
|
144
|
+
|
|
145
|
+
### ⚡ Why is this a Game Changer? (The Dynamic vs Static Dilemma)
|
|
146
|
+
* **Zero CSS Bloat:** Pre-generating all 256 shades for 9 colors (including hover, active, and responsive variants) would require **400,000+ CSS classes**, bloating the CSS file size to over **40MB**! The `ub` engine lets you access all 256 mathematical shades on-demand while keeping the core CSS bundle size at a micro-weight **319KB**.
|
|
147
|
+
* **True Runtime Freedom:** Standard Tailwind is strictly build-time; you cannot feed dynamic React/JS state variables directly into class names. `ub` breaks this barrier, giving you full access to responsive layouts (`lg:`) and hover states (`hover:`) dynamically at runtime.
|
|
148
|
+
* **Auto-Contrast Accessibility:** No more writing extra conditional logic to switch text color (white/black) when background colors change. The engine automatically analyzes background lightness and applies contrast text color on-the-fly.
|
|
149
|
+
* **Native C++ Rendering Speed:** By utilizing browser-native **Constructable Stylesheets** (`adoptedStyleSheets`), style injections are resolved directly at the browser's C++ rendering engine level with minimal JS overhead.
|
|
150
|
+
|
|
151
|
+
### ⚙️ How to Import
|
|
152
|
+
```javascript
|
|
153
|
+
import { ub, gradient, map, oklch } from 'dolphincss/ub';
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### 🪄 Core Features
|
|
157
|
+
|
|
158
|
+
#### 1. Dynamic OKLCH Shading (0-255 Scale)
|
|
159
|
+
Generate arbitrary, dynamically computed color shades and gradients on the fly:
|
|
160
|
+
```jsx
|
|
161
|
+
// 128 starts a medium red, 255 ends a very dark blue
|
|
162
|
+
<div className={ub("card glass gradient-red-128-blue-255 p-6 rounded-2xl")}>
|
|
163
|
+
I am a mathematically perfect gradient!
|
|
164
|
+
</div>
|
|
165
|
+
|
|
166
|
+
// You can feed it dynamic states or sliders:
|
|
167
|
+
<div className={ub(`card bg-blue-${volumeLevel} p-4 text-center`)}>
|
|
168
|
+
Volume Level: {Math.round((volumeLevel/255)*100)}%
|
|
169
|
+
</div>
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
#### 2. Auto-Inversion Text Contrast
|
|
173
|
+
You never have to manually adjust text color when background colors change. The `ub` engine dynamically parses the OKLCH lightness (L) and average hue (H) of the background, and automatically applies high-contrast light or dark text color (`oklch(...) !important`) to guarantee perfect readability!
|
|
174
|
+
|
|
175
|
+
#### 3. IoT Data Mapping
|
|
176
|
+
Map raw numeric values (like CPU temperatures, battery percentages, or sensor values) to intuitive color spectrums automatically:
|
|
177
|
+
```jsx
|
|
178
|
+
// map.heat(val, min, max) maps 0-100% to green-to-red oklch shades automatically:
|
|
179
|
+
<div className={ub(`card ${map.heat(cpuTemp, 0, 100)} p-4 rounded-xl`)}>
|
|
180
|
+
CPU Temperature: {cpuTemp}°C
|
|
181
|
+
</div>
|
|
182
|
+
```
|
|
183
|
+
Available map presets:
|
|
184
|
+
* `map.fuel(val, min, max)`: Red (low) ➔ Orange (mid) ➔ Green (high)
|
|
185
|
+
* `map.heat(val, min, max)`: Green (low) ➔ Red (high)
|
|
186
|
+
* `map.coolWarm(val, min, max)`: Blue (cool) ➔ Red (warm)
|
|
187
|
+
* `map.rainbow(val, min, max)`: Full rainbow spectrum partition mapping
|
|
188
|
+
|
|
189
|
+
#### 4. Ultra-Fast LRU Class Caching
|
|
190
|
+
The engine includes a double-layer LRU Cache (caches compiled color codes and class list parses). If a class (even a standard static CSS class like `transition-all` or `p-4`) is evaluated again, the engine returns it instantly in **O(1) time** with **0ms latency**, preventing redundant browser style recalculations and regex parses.
|
|
191
|
+
|
|
192
|
+
#### 5. Dynamic Transitions & Animations
|
|
193
|
+
Define dynamically timed transitions in JSX:
|
|
194
|
+
```jsx
|
|
195
|
+
// Fills background color from left to red-128 in 500ms
|
|
196
|
+
className={ub("card bg-fill-left-red-128-500ms")}
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## 🚀 Available Magic Components
|
|
202
|
+
|
|
203
|
+
Type any of these magic markers in your `.jsx` or `.tsx` file, hit save, and watch the code generate instantly:
|
|
204
|
+
|
|
205
|
+
- `<div className="dolphin-form-floating"></div>` (Beautiful Floating Label Form)
|
|
206
|
+
- `<div className="dolphin-form-standard"></div>` (Minimalist Standard Label Form)
|
|
207
|
+
- `<div className="dolphin-table"></div>` (Responsive Data Table)
|
|
208
|
+
- `<div className="dolphin-toast"></div>` (Notification Toast)
|
|
209
|
+
- `<div className="dolphin-modal"></div>` (Native HTML Dialog Modal)
|
|
210
|
+
- `<div className="dolphin-button"></div>` (Button Variants Showcase)
|
|
211
|
+
- `<div className="dolphin-card"></div>` (Glassmorphic Profile Card)
|
|
212
|
+
- `<div className="dolphin-grid"></div>` (Responsive Product/Car Grid)
|
|
213
|
+
- `<div className="dolphin-navbar"></div>` (Sleek Navigation Bar)
|
|
214
|
+
- `<div className="dolphin-header"></div>` (Modern Header/Navbar)
|
|
215
|
+
- `<div className="dolphin-footer"></div>` (Premium Footer Section)
|
|
216
|
+
- `<div className="dolphin-alert"></div>` (Modern Alert Box)
|
|
217
|
+
- `<div className="dolphin-badge"></div>` (Status Badges)
|
|
218
|
+
|
|
219
|
+
- `<div className="dolphin-hero"></div>` (Stunning Landing Page Hero)
|
|
220
|
+
- `<div className="dolphin-pricing"></div>` (Premium Pricing Tables)
|
|
221
|
+
- `<div className="dolphin-timeline"></div>` (Vertical Activity Timeline)
|
|
222
|
+
- `<div className="dolphin-chat"></div>` (Modern Messaging Interface)
|
|
223
|
+
- `<div className="dolphin-carousel"></div>` (Interactive Image Slider)
|
|
224
|
+
- `<div className="dolphin-dropzone"></div>` (Drag & Drop File Upload)
|
|
225
|
+
- `<div className="dolphin-rating"></div>` (Interactive 5-Star Rating)
|
|
226
|
+
- `<div className="dolphin-steps"></div>` (Progress Stepper)
|
|
227
|
+
- `<div className="dolphin-pagination"></div>` (Page Navigation Controls)
|
|
228
|
+
- `<div className="dolphin-drawer"></div>` (Off-canvas Glass Sidebar)
|
|
229
|
+
- `<div className="dolphin-breadcrumbs"></div>` (Navigation Trail)
|
|
230
|
+
|
|
231
|
+
## 🎭 The Power of Variants (fx-*)
|
|
132
232
|
|
|
133
233
|
DolphinCSS ships with world-class, pre-built global variants. Instead of writing 15 Tailwind utility classes to create a glassmorphism effect, just use one class!
|
|
134
234
|
|
|
135
|
-
###
|
|
235
|
+
### 🌟 Premium Effects
|
|
136
236
|
Combine these on any div, card, or container:
|
|
137
|
-
-
|
|
138
|
-
-
|
|
139
|
-
-
|
|
140
|
-
-
|
|
141
|
-
-
|
|
142
|
-
-
|
|
143
|
-
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
146
|
-
-
|
|
147
|
-
|
|
148
|
-
###
|
|
237
|
+
- fx-glass (Classic Frosted Glass)
|
|
238
|
+
- fx-crystal (Ultra-clear Crystal Border)
|
|
239
|
+
- fx-neon (Cyberpunk Neon Glow)
|
|
240
|
+
- fx-holo (Holographic Matrix)
|
|
241
|
+
- fx-flare (Solar Flare Gradient)
|
|
242
|
+
- fx-cyber (Cyberpunk Aesthetic)
|
|
243
|
+
- fx-nebula (Galactic Nebula Depth)
|
|
244
|
+
- fx-metal (Liquid Mercury)
|
|
245
|
+
- fx-aurora (Frosted Aurora)
|
|
246
|
+
- fx-float (Quantum Float on Hover)
|
|
247
|
+
|
|
248
|
+
### 🔥 Advanced Glows & Animations
|
|
149
249
|
Bring your UI to life instantly:
|
|
150
250
|
- glow (Standard Hover Glow)
|
|
151
251
|
- glow pulse (Continuous Pulsing Glow)
|
|
152
252
|
- glow wave (Ocean Wave Animation)
|
|
153
253
|
|
|
154
|
-
###
|
|
254
|
+
### 🎨 Global Colors & Buttons
|
|
155
255
|
Propagate theme colors cleanly:
|
|
156
|
-
|
|
256
|
+
```jsx
|
|
157
257
|
<button className="filled primary px-6 py-2 glow wave">Primary Action</button>
|
|
158
258
|
<button className="outlined success px-6 py-2">Success Outline</button>
|
|
159
259
|
<button className="plain danger px-6 py-2">Danger Plain</button>
|
|
@@ -162,8 +262,7 @@ Propagate theme colors cleanly:
|
|
|
162
262
|
<button className="circle lg fx-aurora glow wave">
|
|
163
263
|
<Icon />
|
|
164
264
|
</button>
|
|
165
|
-
|
|
166
|
-
|
|
265
|
+
```
|
|
167
266
|
|
|
168
267
|
---
|
|
169
268
|
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
<div class="dolphin-file-explorer" data-dolphin-vfs="root" style="
|
|
2
|
+
display: flex;
|
|
3
|
+
height: 600px;
|
|
4
|
+
background: #1e1e1e;
|
|
5
|
+
color: #cccccc;
|
|
6
|
+
font-family: Consolas, 'Courier New', monospace;
|
|
7
|
+
border-radius: 12px;
|
|
8
|
+
border: 1px solid #333;
|
|
9
|
+
overflow: hidden;
|
|
10
|
+
box-shadow: 0 20px 40px rgba(0,0,0,0.5);
|
|
11
|
+
">
|
|
12
|
+
<!-- Sidebar (File Tree) -->
|
|
13
|
+
<div class="sidebar" style="
|
|
14
|
+
width: 260px;
|
|
15
|
+
background: #252526;
|
|
16
|
+
border-right: 1px solid #3c3c3c;
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
height: 100%;
|
|
20
|
+
">
|
|
21
|
+
<!-- Header -->
|
|
22
|
+
<div style="
|
|
23
|
+
padding: 10px 14px;
|
|
24
|
+
font-size: 11px;
|
|
25
|
+
font-weight: bold;
|
|
26
|
+
letter-spacing: 1px;
|
|
27
|
+
text-transform: uppercase;
|
|
28
|
+
color: #858585;
|
|
29
|
+
border-bottom: 1px solid #3c3c3c;
|
|
30
|
+
display: flex;
|
|
31
|
+
justify-content: space-between;
|
|
32
|
+
align-items: center;
|
|
33
|
+
gap: 6px;
|
|
34
|
+
">
|
|
35
|
+
<span>EXPLORER</span>
|
|
36
|
+
<div style="display: flex; align-items: center; gap: 8px;">
|
|
37
|
+
<span style="cursor:pointer; font-weight: bold; font-size:12px; color: #007acc;" data-vfs-new-file title="New File">+File</span>
|
|
38
|
+
<span style="cursor:pointer; font-weight: bold; font-size:12px; color: #007acc;" data-vfs-new-folder title="New Folder">+Folder</span>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
|
|
42
|
+
<!-- Mount local windows directory button -->
|
|
43
|
+
<div style="padding: 10px 14px; border-bottom: 1px solid #3c3c3c; display: flex; flex-direction: column; gap: 6px;">
|
|
44
|
+
<button data-vfs-mount style="
|
|
45
|
+
background: #0e639c;
|
|
46
|
+
color: #ffffff;
|
|
47
|
+
border: none;
|
|
48
|
+
padding: 6px 12px;
|
|
49
|
+
border-radius: 4px;
|
|
50
|
+
font-size: 11px;
|
|
51
|
+
font-family: var(--font-outfit), sans-serif;
|
|
52
|
+
font-weight: 500;
|
|
53
|
+
cursor: pointer;
|
|
54
|
+
transition: background 0.15s;
|
|
55
|
+
text-align: center;
|
|
56
|
+
" onmouseover="this.style.backgroundColor='#1177bb'" onmouseout="this.style.backgroundColor='#0e639c'">
|
|
57
|
+
📁 Mount Local Directory
|
|
58
|
+
</button>
|
|
59
|
+
<span style="font-size: 9px; color: #858585; text-align: center; line-height: 1.3;">
|
|
60
|
+
Mount any folder on your Windows computer directly to view and edit files.
|
|
61
|
+
</span>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<!-- Tree View Container -->
|
|
65
|
+
<div id="file-tree-container" data-vfs-tree class="dolphin-scrollbar" style="
|
|
66
|
+
flex: 1;
|
|
67
|
+
overflow-y: auto;
|
|
68
|
+
padding: 8px 0;
|
|
69
|
+
">
|
|
70
|
+
<!-- Generated dynamically by dolphin-client VFS engine -->
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
|
|
74
|
+
<!-- Main Content (Editor Area) -->
|
|
75
|
+
<div class="editor-area" style="
|
|
76
|
+
flex: 1;
|
|
77
|
+
background: #1e1e1e;
|
|
78
|
+
display: flex;
|
|
79
|
+
flex-direction: column;
|
|
80
|
+
height: 100%;
|
|
81
|
+
">
|
|
82
|
+
<!-- Tab / Breadcrumb -->
|
|
83
|
+
<div style="
|
|
84
|
+
height: 38px;
|
|
85
|
+
background: #2d2d2d;
|
|
86
|
+
border-bottom: 1px solid #3c3c3c;
|
|
87
|
+
display: flex;
|
|
88
|
+
align-items: center;
|
|
89
|
+
justify-content: space-between;
|
|
90
|
+
padding: 0 16px;
|
|
91
|
+
font-size: 13px;
|
|
92
|
+
color: #969696;
|
|
93
|
+
">
|
|
94
|
+
<span id="active-file-crumb" data-vfs-breadcrumbs>No file open</span>
|
|
95
|
+
|
|
96
|
+
<!-- Save Button -->
|
|
97
|
+
<button data-vfs-save style="
|
|
98
|
+
background: #007acc;
|
|
99
|
+
color: #ffffff;
|
|
100
|
+
border: none;
|
|
101
|
+
padding: 4px 12px;
|
|
102
|
+
border-radius: 4px;
|
|
103
|
+
font-size: 11px;
|
|
104
|
+
cursor: pointer;
|
|
105
|
+
display: flex;
|
|
106
|
+
align-items: center;
|
|
107
|
+
gap: 6px;
|
|
108
|
+
font-family: var(--font-outfit), sans-serif;
|
|
109
|
+
font-weight: 500;
|
|
110
|
+
transition: background 0.15s;
|
|
111
|
+
" onmouseover="this.style.backgroundColor='#0098ff'" onmouseout="this.style.backgroundColor='#007acc'">
|
|
112
|
+
💾 Save File
|
|
113
|
+
</button>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<!-- Code Display / Textarea -->
|
|
117
|
+
<div style="
|
|
118
|
+
flex: 1;
|
|
119
|
+
position: relative;
|
|
120
|
+
overflow: hidden;
|
|
121
|
+
">
|
|
122
|
+
<textarea id="editor-textarea" data-vfs-editor class="dolphin-scrollbar" placeholder="// Mount a folder or click a file to start editing..." style="
|
|
123
|
+
width: 100%;
|
|
124
|
+
height: 100%;
|
|
125
|
+
background: transparent;
|
|
126
|
+
border: none;
|
|
127
|
+
outline: none;
|
|
128
|
+
color: #d4d4d4;
|
|
129
|
+
padding: 16px;
|
|
130
|
+
font-family: Consolas, 'Courier New', monospace;
|
|
131
|
+
font-size: 14px;
|
|
132
|
+
line-height: 1.5;
|
|
133
|
+
resize: none;
|
|
134
|
+
" disabled></textarea>
|
|
135
|
+
</div>
|
|
136
|
+
|
|
137
|
+
<!-- Footer Status Bar -->
|
|
138
|
+
<div style="
|
|
139
|
+
height: 22px;
|
|
140
|
+
background: #007acc;
|
|
141
|
+
color: #ffffff;
|
|
142
|
+
font-size: 11px;
|
|
143
|
+
display: flex;
|
|
144
|
+
align-items: center;
|
|
145
|
+
justify-content: space-between;
|
|
146
|
+
padding: 0 10px;
|
|
147
|
+
">
|
|
148
|
+
<span>Dolphin VFS Client</span>
|
|
149
|
+
<span id="editor-status" data-vfs-status>Ready</span>
|
|
150
|
+
</div>
|
|
151
|
+
</div>
|
|
152
|
+
</div>
|