Skip to content

Commit a385921

Browse files
Glass-card Nimo aesthetic, scope npm packages under @lightshell
Website: glass blur windows, grain texture canvas, floating dock pill. npm: rename lightshell -> @lightshell/cli, create-lightshell -> @lightshell/create to work with granular npm tokens (classic tokens deprecated).
1 parent 7651c4b commit a385921

4 files changed

Lines changed: 42 additions & 46 deletions

File tree

npm/create-lightshell/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "create-lightshell",
2+
"name": "@lightshell/create",
33
"version": "0.1.0",
44
"description": "Create a new LightShell desktop app",
55
"keywords": ["create", "lightshell", "desktop", "app"],

npm/lightshell/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "lightshell",
2+
"name": "@lightshell/cli",
33
"version": "0.1.0",
44
"description": "Build desktop apps with JavaScript. Ship them under 5MB.",
55
"keywords": ["desktop", "app", "framework", "webview", "native", "macos", "linux"],

website/css/desktop.css

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* desktop.css — Window chrome, taskbar, icons, wallpaper */
22

3-
/* Desktop surface */
3+
/* Desktop canvas */
44
.desktop {
55
position: fixed;
66
inset: 0;
7-
background-color: var(--bg-desktop);
7+
background-color: var(--canvas-bg);
88
z-index: var(--z-desktop);
99
overflow: hidden;
1010
}
@@ -35,9 +35,9 @@
3535
display: flex;
3636
flex-direction: column;
3737
align-items: center;
38-
gap: 4px;
39-
width: 80px;
40-
padding: 8px 4px;
38+
gap: 6px;
39+
width: 84px;
40+
padding: 10px 4px;
4141
border-radius: var(--radius-icon);
4242
cursor: pointer;
4343
transition: background var(--transition-fast);
@@ -46,7 +46,7 @@
4646
background: var(--bg-icon-hover);
4747
}
4848
.desktop-icon:active {
49-
background: rgba(0, 0, 0, 0.1);
49+
background: rgba(0, 0, 0, 0.07);
5050
}
5151

5252
.desktop-icon .icon-img {
@@ -61,21 +61,22 @@
6161
.desktop-icon .icon-label {
6262
font-size: 0.8rem;
6363
font-weight: 600;
64-
color: #2a2a2a;
64+
color: var(--text-primary);
6565
text-align: center;
66-
text-shadow: 0 1px 3px rgba(255, 255, 255, 0.5);
6766
line-height: 1.3;
6867
word-break: break-word;
6968
max-width: 80px;
7069
}
7170

72-
/* Window */
71+
/* Window — glass card */
7372
.window {
7473
position: absolute;
7574
background: var(--bg-window);
75+
backdrop-filter: blur(25px) saturate(160%);
76+
-webkit-backdrop-filter: blur(25px) saturate(160%);
7677
border-radius: var(--radius-window);
7778
box-shadow: var(--shadow-window);
78-
border: 1px solid var(--border-window);
79+
border: 1px solid var(--glass-border);
7980
display: flex;
8081
flex-direction: column;
8182
min-width: 280px;
@@ -204,7 +205,7 @@
204205
.window-body {
205206
flex: 1;
206207
overflow: auto;
207-
padding: 20px;
208+
padding: 24px;
208209
font-size: 0.9rem;
209210
line-height: 1.65;
210211
color: var(--text-primary);
@@ -248,7 +249,7 @@
248249
/* Taskbar — floating dock pill */
249250
.taskbar {
250251
position: fixed;
251-
bottom: 24px;
252+
bottom: 32px;
252253
left: 50%;
253254
transform: translateX(-50%);
254255
right: auto;
@@ -258,7 +259,7 @@
258259
border-radius: 100px;
259260
display: flex;
260261
align-items: center;
261-
padding: 8px 10px;
262+
padding: 8px 12px;
262263
z-index: var(--z-taskbar);
263264
box-shadow: var(--shadow-taskbar);
264265
gap: 6px;
@@ -337,7 +338,7 @@
337338
.desktop {
338339
overflow-y: auto;
339340
padding: 16px;
340-
padding-bottom: 64px;
341+
padding-bottom: 80px;
341342
}
342343

343344
.window {
@@ -454,8 +455,8 @@
454455
margin-top: 16px;
455456
}
456457
.example-card {
457-
background: #fafaf9;
458-
border: 1px solid rgba(0,0,0,0.03);
458+
background: rgba(255, 255, 255, 0.5);
459+
border: 1px solid rgba(255, 255, 255, 0.6);
459460
border-radius: 16px;
460461
padding: 14px 16px;
461462
}
@@ -492,8 +493,8 @@
492493
line-height: 1.4;
493494
}
494495
.example-code {
495-
background: rgba(0,0,0,0.04);
496-
border-radius: 6px;
496+
background: rgba(0, 0, 0, 0.04);
497+
border-radius: 8px;
497498
padding: 10px 12px;
498499
overflow-x: auto;
499500
margin: 0;
@@ -502,5 +503,5 @@
502503
font-family: var(--font-mono);
503504
font-size: 0.75rem;
504505
line-height: 1.5;
505-
color: var(--text);
506+
color: var(--text-primary);
506507
}

website/css/shared.css

Lines changed: 20 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
/* shared.css — Typography, colors, resets, responsive */
22

33
:root {
4-
--bg-desktop: #f5f4f0;
5-
--bg-window: #ffffff;
6-
--bg-window-header: #fafaf9;
7-
--bg-window-header-inactive: #f5f5f3;
4+
--canvas-bg: #f5f4f0;
5+
--glass-bg: rgba(255, 255, 255, 0.45);
6+
--glass-border: rgba(255, 255, 255, 0.3);
7+
--bg-window: rgba(255, 255, 255, 0.6);
8+
--bg-window-header: rgba(255, 255, 255, 0.35);
9+
--bg-window-header-inactive: rgba(245, 244, 240, 0.4);
810
--bg-taskbar: #ffffff;
911
--bg-icon-hover: rgba(0, 0, 0, 0.04);
1012
--bg-tooltip: rgba(30, 30, 30, 0.9);
@@ -13,17 +15,16 @@
1315
--text-secondary: #6b6b6b;
1416
--text-muted: #999999;
1517
--text-desktop: #1a1a1a;
16-
--text-desktop-shadow: none;
1718
--text-link: #1a1a1a;
1819

19-
--border-window: rgba(255, 255, 255, 0.7);
20-
--border-subtle: rgba(0, 0, 0, 0.03);
20+
--border-window: rgba(255, 255, 255, 0.5);
21+
--border-subtle: rgba(0, 0, 0, 0.04);
2122

22-
--shadow-window: 0 30px 60px rgba(0, 0, 0, 0.05);
23-
--shadow-window-focused: 0 30px 60px rgba(0, 0, 0, 0.08);
24-
--shadow-taskbar: 0 15px 40px rgba(0, 0, 0, 0.1);
23+
--shadow-window: 0 25px 50px rgba(0, 0, 0, 0.06);
24+
--shadow-window-focused: 0 25px 50px rgba(0, 0, 0, 0.1);
25+
--shadow-taskbar: 0 10px 40px rgba(0, 0, 0, 0.1);
2526

26-
--radius-window: 32px;
27+
--radius-window: 28px;
2728
--radius-btn: 14px;
2829
--radius-icon: 16px;
2930

@@ -44,7 +45,7 @@
4445

4546
--accent: #1a1a1a;
4647
--accent-light: #f0f0ee;
47-
--green: #40916c;
48+
--green: #2d5a4c;
4849
--yellow: #dda15e;
4950
--red: #e07a5f;
5051
--orange: #d4a373;
@@ -83,7 +84,7 @@ pre {
8384
background: #1e1e2e;
8485
color: #cdd6f4;
8586
padding: 1rem;
86-
border-radius: var(--radius-btn);
87+
border-radius: 12px;
8788
overflow-x: auto;
8889
font-size: 0.8125rem;
8990
line-height: 1.6;
@@ -94,7 +95,7 @@ pre {
9495
code {
9596
background: rgba(0, 0, 0, 0.06);
9697
padding: 0.15em 0.4em;
97-
border-radius: 3px;
98+
border-radius: 4px;
9899
font-size: 0.875em;
99100
}
100101

@@ -120,28 +121,25 @@ button {
120121
/* Scrollbar normalization */
121122
::-webkit-scrollbar { width: 6px; height: 6px; }
122123
::-webkit-scrollbar-track { background: transparent; }
123-
::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.15); border-radius: 3px; }
124-
::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.25); }
124+
::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.12); border-radius: 3px; }
125+
::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.2); }
125126

126127
/* Buttons */
127128
.btn {
128129
display: inline-flex;
129130
align-items: center;
130131
gap: 0.5rem;
131-
padding: 0.6rem 1.2rem;
132-
border-radius: var(--radius-btn);
132+
padding: 0.7rem 1.5rem;
133+
border-radius: 100px;
133134
font-size: 0.875rem;
134-
font-weight: 500;
135+
font-weight: 600;
135136
transition: all var(--transition-fast);
136137
white-space: nowrap;
137138
}
138139

139140
.btn-primary {
140141
background: var(--accent);
141142
color: white;
142-
border-radius: 100px;
143-
font-weight: 600;
144-
padding: 0.7rem 1.5rem;
145143
}
146144
.btn-primary:hover {
147145
background: #333;
@@ -151,9 +149,6 @@ button {
151149
.btn-secondary {
152150
background: var(--accent-light);
153151
color: var(--text-primary);
154-
border-radius: 100px;
155-
font-weight: 600;
156-
padding: 0.7rem 1.5rem;
157152
}
158153
.btn-secondary:hover {
159154
background: #e8e8e5;

0 commit comments

Comments
 (0)