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 CHANGED
@@ -1,159 +1,259 @@
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
- ## G�� 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
- ## =�ɼ Available Magic Components
102
-
103
- Type any of these magic markers in your `.jsx` or `.tsx` file, hit save, and watch the code generate instantly:
104
-
105
- - `<div className="dolphin-form-floating"></div>` (Beautiful Floating Label Form)
106
- - `<div className="dolphin-form-standard"></div>` (Minimalist Standard Label Form)
107
- - `<div className="dolphin-table"></div>` (Responsive Data Table)
108
- - `<div className="dolphin-toast"></div>` (Notification Toast)
109
- - `<div className="dolphin-modal"></div>` (Native HTML Dialog Modal)
110
- - `<div className="dolphin-button"></div>` (Button Variants Showcase)
111
- - `<div className="dolphin-card"></div>` (Glassmorphic Profile Card)
112
- - `<div className="dolphin-grid"></div>` (Responsive Product/Car Grid)
113
- - `<div className="dolphin-navbar"></div>` (Sleek Navigation Bar)
114
- - `<div className="dolphin-header"></div>` (Modern Header/Navbar)
115
- - `<div className="dolphin-footer"></div>` (Premium Footer Section)
116
- - `<div className="dolphin-alert"></div>` (Modern Alert Box)
117
- - `<div className="dolphin-badge"></div>` (Status Badges)
118
-
119
- - <div className="dolphin-hero"></div> (Stunning Landing Page Hero)
120
- - <div className="dolphin-pricing"></div> (Premium Pricing Tables)
121
- - <div className="dolphin-timeline"></div> (Vertical Activity Timeline)
122
- - <div className="dolphin-chat"></div> (Modern Messaging Interface)
123
- - <div className="dolphin-carousel"></div> (Interactive Image Slider)
124
- - <div className="dolphin-dropzone"></div> (Drag & Drop File Upload)
125
- - <div className="dolphin-rating"></div> (Interactive 5-Star Rating)
126
- - <div className="dolphin-steps"></div> (Progress Stepper)
127
- - <div className="dolphin-pagination"></div> (Page Navigation Controls)
128
- - <div className="dolphin-drawer"></div> (Off-canvas Glass Sidebar)
129
- - <div className="dolphin-breadcrumbs"></div> (Navigation Trail)
130
-
131
- ## ?? The Power of Variants ( x-*)
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
- ### ?? Premium Effects
235
+ ### 🌟 Premium Effects
136
236
  Combine these on any div, card, or container:
137
- - x-glass (Classic Frosted Glass)
138
- - x-crystal (Ultra-clear Crystal Border)
139
- - x-neon (Cyberpunk Neon Glow)
140
- - x-holo (Holographic Matrix)
141
- - x-flare (Solar Flare Gradient)
142
- - x-cyber (Cyberpunk Aesthetic)
143
- - x-nebula (Galactic Nebula Depth)
144
- - x-metal (Liquid Mercury)
145
- - x-aurora (Frosted Aurora)
146
- - x-float (Quantum Float on Hover)
147
-
148
- ### ?? Advanced Glows & Animations
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
- ### ?? Global Colors & Buttons
254
+ ### 🎨 Global Colors & Buttons
155
255
  Propagate theme colors cleanly:
156
- `jsx
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>