create-gardener 1.0.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.
@@ -0,0 +1,481 @@
1
+ /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
2
+ @layer properties;
3
+ @layer theme, base, components, utilities;
4
+ @layer theme {
5
+ :root, :host {
6
+ --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
7
+ 'Noto Color Emoji';
8
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
9
+ monospace;
10
+ --color-red-300: oklch(80.8% 0.114 19.571);
11
+ --color-green-300: oklch(87.1% 0.15 154.449);
12
+ --color-green-500: oklch(72.3% 0.219 149.579);
13
+ --color-gray-200: oklch(92.8% 0.006 264.531);
14
+ --color-gray-500: oklch(55.1% 0.027 264.364);
15
+ --color-black: #000;
16
+ --color-white: #fff;
17
+ --spacing: 0.25rem;
18
+ --text-5xl: 3rem;
19
+ --text-5xl--line-height: 1;
20
+ --font-weight-bold: 700;
21
+ --radius-md: 0.375rem;
22
+ --radius-lg: 0.5rem;
23
+ --default-transition-duration: 150ms;
24
+ --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
25
+ --default-font-family: var(--font-sans);
26
+ --default-mono-font-family: var(--font-mono);
27
+ }
28
+ }
29
+ @layer base {
30
+ *, ::after, ::before, ::backdrop, ::file-selector-button {
31
+ box-sizing: border-box;
32
+ margin: 0;
33
+ padding: 0;
34
+ border: 0 solid;
35
+ }
36
+ html, :host {
37
+ line-height: 1.5;
38
+ -webkit-text-size-adjust: 100%;
39
+ tab-size: 4;
40
+ font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
41
+ font-feature-settings: var(--default-font-feature-settings, normal);
42
+ font-variation-settings: var(--default-font-variation-settings, normal);
43
+ -webkit-tap-highlight-color: transparent;
44
+ }
45
+ hr {
46
+ height: 0;
47
+ color: inherit;
48
+ border-top-width: 1px;
49
+ }
50
+ abbr:where([title]) {
51
+ -webkit-text-decoration: underline dotted;
52
+ text-decoration: underline dotted;
53
+ }
54
+ h1, h2, h3, h4, h5, h6 {
55
+ font-size: inherit;
56
+ font-weight: inherit;
57
+ }
58
+ a {
59
+ color: inherit;
60
+ -webkit-text-decoration: inherit;
61
+ text-decoration: inherit;
62
+ }
63
+ b, strong {
64
+ font-weight: bolder;
65
+ }
66
+ code, kbd, samp, pre {
67
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
68
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
69
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
70
+ font-size: 1em;
71
+ }
72
+ small {
73
+ font-size: 80%;
74
+ }
75
+ sub, sup {
76
+ font-size: 75%;
77
+ line-height: 0;
78
+ position: relative;
79
+ vertical-align: baseline;
80
+ }
81
+ sub {
82
+ bottom: -0.25em;
83
+ }
84
+ sup {
85
+ top: -0.5em;
86
+ }
87
+ table {
88
+ text-indent: 0;
89
+ border-color: inherit;
90
+ border-collapse: collapse;
91
+ }
92
+ :-moz-focusring {
93
+ outline: auto;
94
+ }
95
+ progress {
96
+ vertical-align: baseline;
97
+ }
98
+ summary {
99
+ display: list-item;
100
+ }
101
+ ol, ul, menu {
102
+ list-style: none;
103
+ }
104
+ img, svg, video, canvas, audio, iframe, embed, object {
105
+ display: block;
106
+ vertical-align: middle;
107
+ }
108
+ img, video {
109
+ max-width: 100%;
110
+ height: auto;
111
+ }
112
+ button, input, select, optgroup, textarea, ::file-selector-button {
113
+ font: inherit;
114
+ font-feature-settings: inherit;
115
+ font-variation-settings: inherit;
116
+ letter-spacing: inherit;
117
+ color: inherit;
118
+ border-radius: 0;
119
+ background-color: transparent;
120
+ opacity: 1;
121
+ }
122
+ :where(select:is([multiple], [size])) optgroup {
123
+ font-weight: bolder;
124
+ }
125
+ :where(select:is([multiple], [size])) optgroup option {
126
+ padding-inline-start: 20px;
127
+ }
128
+ ::file-selector-button {
129
+ margin-inline-end: 4px;
130
+ }
131
+ ::placeholder {
132
+ opacity: 1;
133
+ }
134
+ @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
135
+ ::placeholder {
136
+ color: currentcolor;
137
+ @supports (color: color-mix(in lab, red, red)) {
138
+ color: color-mix(in oklab, currentcolor 50%, transparent);
139
+ }
140
+ }
141
+ }
142
+ textarea {
143
+ resize: vertical;
144
+ }
145
+ ::-webkit-search-decoration {
146
+ -webkit-appearance: none;
147
+ }
148
+ ::-webkit-date-and-time-value {
149
+ min-height: 1lh;
150
+ text-align: inherit;
151
+ }
152
+ ::-webkit-datetime-edit {
153
+ display: inline-flex;
154
+ }
155
+ ::-webkit-datetime-edit-fields-wrapper {
156
+ padding: 0;
157
+ }
158
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
159
+ padding-block: 0;
160
+ }
161
+ ::-webkit-calendar-picker-indicator {
162
+ line-height: 1;
163
+ }
164
+ :-moz-ui-invalid {
165
+ box-shadow: none;
166
+ }
167
+ button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
168
+ appearance: button;
169
+ }
170
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
171
+ height: auto;
172
+ }
173
+ [hidden]:where(:not([hidden='until-found'])) {
174
+ display: none !important;
175
+ }
176
+ }
177
+ @layer utilities {
178
+ .absolute {
179
+ position: absolute;
180
+ }
181
+ .fixed {
182
+ position: fixed;
183
+ }
184
+ .static {
185
+ position: static;
186
+ }
187
+ .top-0 {
188
+ top: calc(var(--spacing) * 0);
189
+ }
190
+ .top-1\/4 {
191
+ top: calc(1/4 * 100%);
192
+ }
193
+ .top-2\/5 {
194
+ top: calc(2/5 * 100%);
195
+ }
196
+ .right-0 {
197
+ right: calc(var(--spacing) * 0);
198
+ }
199
+ .right-2 {
200
+ right: calc(var(--spacing) * 2);
201
+ }
202
+ .bottom-0 {
203
+ bottom: calc(var(--spacing) * 0);
204
+ }
205
+ .bottom-22 {
206
+ bottom: calc(var(--spacing) * 22);
207
+ }
208
+ .left-1\/4 {
209
+ left: calc(1/4 * 100%);
210
+ }
211
+ .left-2\/5 {
212
+ left: calc(2/5 * 100%);
213
+ }
214
+ .left-\[100vw\] {
215
+ left: 100vw;
216
+ }
217
+ .z-90 {
218
+ z-index: 90;
219
+ }
220
+ .z-100 {
221
+ z-index: 100;
222
+ }
223
+ .block {
224
+ display: block;
225
+ }
226
+ .flex {
227
+ display: flex;
228
+ }
229
+ .h-2\/4 {
230
+ height: calc(2/4 * 100%);
231
+ }
232
+ .h-15 {
233
+ height: calc(var(--spacing) * 15);
234
+ }
235
+ .h-\[90vh\] {
236
+ height: 90vh;
237
+ }
238
+ .h-screen {
239
+ height: 100vh;
240
+ }
241
+ .w-2\/4 {
242
+ width: calc(2/4 * 100%);
243
+ }
244
+ .w-15 {
245
+ width: calc(var(--spacing) * 15);
246
+ }
247
+ .w-500 {
248
+ width: calc(var(--spacing) * 500);
249
+ }
250
+ .w-screen {
251
+ width: 100vw;
252
+ }
253
+ .transform {
254
+ transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
255
+ }
256
+ .cursor-pointer {
257
+ cursor: pointer;
258
+ }
259
+ .resize {
260
+ resize: both;
261
+ }
262
+ .flex-col {
263
+ flex-direction: column;
264
+ }
265
+ .items-center {
266
+ align-items: center;
267
+ }
268
+ .justify-around {
269
+ justify-content: space-around;
270
+ }
271
+ .justify-between {
272
+ justify-content: space-between;
273
+ }
274
+ .justify-center {
275
+ justify-content: center;
276
+ }
277
+ .gap-2 {
278
+ gap: calc(var(--spacing) * 2);
279
+ }
280
+ .overflow-scroll {
281
+ overflow: scroll;
282
+ }
283
+ .rounded-full {
284
+ border-radius: calc(infinity * 1px);
285
+ }
286
+ .rounded-lg {
287
+ border-radius: var(--radius-lg);
288
+ }
289
+ .rounded-md {
290
+ border-radius: var(--radius-md);
291
+ }
292
+ .rounded-t-lg {
293
+ border-top-left-radius: var(--radius-lg);
294
+ border-top-right-radius: var(--radius-lg);
295
+ }
296
+ .border-2 {
297
+ border-style: var(--tw-border-style);
298
+ border-width: 2px;
299
+ }
300
+ .border-b-1 {
301
+ border-bottom-style: var(--tw-border-style);
302
+ border-bottom-width: 1px;
303
+ }
304
+ .border-black {
305
+ border-color: var(--color-black);
306
+ }
307
+ .bg-gray-200 {
308
+ background-color: var(--color-gray-200);
309
+ }
310
+ .bg-gray-500 {
311
+ background-color: var(--color-gray-500);
312
+ }
313
+ .bg-green-300 {
314
+ background-color: var(--color-green-300);
315
+ }
316
+ .bg-red-300 {
317
+ background-color: var(--color-red-300);
318
+ }
319
+ .bg-white {
320
+ background-color: var(--color-white);
321
+ }
322
+ .p-2 {
323
+ padding: calc(var(--spacing) * 2);
324
+ }
325
+ .p-4 {
326
+ padding: calc(var(--spacing) * 4);
327
+ }
328
+ .p-5 {
329
+ padding: calc(var(--spacing) * 5);
330
+ }
331
+ .pb-1\.5 {
332
+ padding-bottom: calc(var(--spacing) * 1.5);
333
+ }
334
+ .text-5xl {
335
+ font-size: var(--text-5xl);
336
+ line-height: var(--tw-leading, var(--text-5xl--line-height));
337
+ }
338
+ .font-bold {
339
+ --tw-font-weight: var(--font-weight-bold);
340
+ font-weight: var(--font-weight-bold);
341
+ }
342
+ .text-black {
343
+ color: var(--color-black);
344
+ }
345
+ .text-green-500 {
346
+ color: var(--color-green-500);
347
+ }
348
+ .text-white {
349
+ color: var(--color-white);
350
+ }
351
+ .shadow-\[30px_0_60px_15px_rgb\(0\,0\,0\)\] {
352
+ --tw-shadow: 30px 0 60px 15px var(--tw-shadow-color, rgb(0,0,0));
353
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
354
+ }
355
+ .transition {
356
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
357
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
358
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
359
+ }
360
+ }
361
+ @property --tw-rotate-x {
362
+ syntax: "*";
363
+ inherits: false;
364
+ }
365
+ @property --tw-rotate-y {
366
+ syntax: "*";
367
+ inherits: false;
368
+ }
369
+ @property --tw-rotate-z {
370
+ syntax: "*";
371
+ inherits: false;
372
+ }
373
+ @property --tw-skew-x {
374
+ syntax: "*";
375
+ inherits: false;
376
+ }
377
+ @property --tw-skew-y {
378
+ syntax: "*";
379
+ inherits: false;
380
+ }
381
+ @property --tw-border-style {
382
+ syntax: "*";
383
+ inherits: false;
384
+ initial-value: solid;
385
+ }
386
+ @property --tw-font-weight {
387
+ syntax: "*";
388
+ inherits: false;
389
+ }
390
+ @property --tw-shadow {
391
+ syntax: "*";
392
+ inherits: false;
393
+ initial-value: 0 0 #0000;
394
+ }
395
+ @property --tw-shadow-color {
396
+ syntax: "*";
397
+ inherits: false;
398
+ }
399
+ @property --tw-shadow-alpha {
400
+ syntax: "<percentage>";
401
+ inherits: false;
402
+ initial-value: 100%;
403
+ }
404
+ @property --tw-inset-shadow {
405
+ syntax: "*";
406
+ inherits: false;
407
+ initial-value: 0 0 #0000;
408
+ }
409
+ @property --tw-inset-shadow-color {
410
+ syntax: "*";
411
+ inherits: false;
412
+ }
413
+ @property --tw-inset-shadow-alpha {
414
+ syntax: "<percentage>";
415
+ inherits: false;
416
+ initial-value: 100%;
417
+ }
418
+ @property --tw-ring-color {
419
+ syntax: "*";
420
+ inherits: false;
421
+ }
422
+ @property --tw-ring-shadow {
423
+ syntax: "*";
424
+ inherits: false;
425
+ initial-value: 0 0 #0000;
426
+ }
427
+ @property --tw-inset-ring-color {
428
+ syntax: "*";
429
+ inherits: false;
430
+ }
431
+ @property --tw-inset-ring-shadow {
432
+ syntax: "*";
433
+ inherits: false;
434
+ initial-value: 0 0 #0000;
435
+ }
436
+ @property --tw-ring-inset {
437
+ syntax: "*";
438
+ inherits: false;
439
+ }
440
+ @property --tw-ring-offset-width {
441
+ syntax: "<length>";
442
+ inherits: false;
443
+ initial-value: 0px;
444
+ }
445
+ @property --tw-ring-offset-color {
446
+ syntax: "*";
447
+ inherits: false;
448
+ initial-value: #fff;
449
+ }
450
+ @property --tw-ring-offset-shadow {
451
+ syntax: "*";
452
+ inherits: false;
453
+ initial-value: 0 0 #0000;
454
+ }
455
+ @layer properties {
456
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
457
+ *, ::before, ::after, ::backdrop {
458
+ --tw-rotate-x: initial;
459
+ --tw-rotate-y: initial;
460
+ --tw-rotate-z: initial;
461
+ --tw-skew-x: initial;
462
+ --tw-skew-y: initial;
463
+ --tw-border-style: solid;
464
+ --tw-font-weight: initial;
465
+ --tw-shadow: 0 0 #0000;
466
+ --tw-shadow-color: initial;
467
+ --tw-shadow-alpha: 100%;
468
+ --tw-inset-shadow: 0 0 #0000;
469
+ --tw-inset-shadow-color: initial;
470
+ --tw-inset-shadow-alpha: 100%;
471
+ --tw-ring-color: initial;
472
+ --tw-ring-shadow: 0 0 #0000;
473
+ --tw-inset-ring-color: initial;
474
+ --tw-inset-ring-shadow: 0 0 #0000;
475
+ --tw-ring-inset: initial;
476
+ --tw-ring-offset-width: 0px;
477
+ --tw-ring-offset-color: #fff;
478
+ --tw-ring-offset-shadow: 0 0 #0000;
479
+ }
480
+ }
481
+ }
@@ -0,0 +1 @@
1
+ @import "tailwindcss"
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <link rel="stylesheet" href="/style.css">
7
+ <title>Gardener</title>
8
+ </head>
9
+ <body>
10
+ <div id='body'>
11
+ <%- include('partials/loader') %>
12
+ <div class="hero flex justify-around items-center p-5 h-[90vh]">
13
+ <p class='p-5'>
14
+ Gardener is a front-end library for creating and manipulating DOM elements using a declarative JavaScript object syntax. It includes a development server with features like hot-reloading and on-the-fly component creation from existing HTML. The server also provides dynamic image resizing and caching.
15
+ </p>
16
+ <img src="/cache/w_500x500.webp" alt="logo" >
17
+ </div>
18
+
19
+ </div>
20
+ <script src='/global.js' type="module"></script>
21
+ <script type="module">
22
+ import {parser,fetchElement} from '/gardener.js'
23
+ parser(fetchElement('#body'));
24
+ </script>
25
+ </body>
26
+ </html>
@@ -0,0 +1,3 @@
1
+ <div class='h-screen w-screen bg-white loader absolute'>
2
+
3
+ </div>
File without changes
@@ -0,0 +1,43 @@
1
+ {
2
+ // Visit https://aka.ms/tsconfig to read more about this file
3
+ "compilerOptions": {
4
+ // File Layout
5
+ "rootDir": "./src/backend/",
6
+ "outDir": "./build",
7
+
8
+ // Environment Settings
9
+ // See also https://aka.ms/tsconfig/module
10
+ "module": "nodenext",
11
+ "target": "esnext",
12
+ // For nodejs:
13
+ // "lib": ["esnext"],
14
+ "types": ["node","express"],
15
+ // and npm install -D @types/node
16
+
17
+ // Other Outputs
18
+ "sourceMap": true,
19
+ "declaration": true,
20
+ "declarationMap": true,
21
+
22
+ // Stricter Typechecking Options
23
+ "noUncheckedIndexedAccess": true,
24
+ "exactOptionalPropertyTypes": true,
25
+
26
+ // Style Options
27
+ // "noImplicitReturns": true,
28
+ // "noImplicitOverride": true,
29
+ // "noUnusedLocals": true,
30
+ // "noUnusedParameters": true,
31
+ // "noFallthroughCasesInSwitch": true,
32
+ // "noPropertyAccessFromIndexSignature": true,
33
+
34
+ // Recommended Options
35
+ "strict": true,
36
+ "jsx": "react-jsx",
37
+ "verbatimModuleSyntax": true,
38
+ "isolatedModules": true,
39
+ "noUncheckedSideEffectImports": true,
40
+ "moduleDetection": "force",
41
+ "skipLibCheck": true,
42
+ }
43
+ }