json-renderers 1.18.4 → 1.18.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.
@@ -0,0 +1,326 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="UTF-8" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>Samples &amp; Component Guides | json-renderers</title>
8
+ <meta name="description"
9
+ content="Explore documentation, live interactive samples, CDN import patterns, and window.ks global runtime guides for Table, Select, and Datalist components." />
10
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
11
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
12
+ <link
13
+ href="https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600&family=Inter:wght@300;400;500;600;700;800&display=swap"
14
+ rel="stylesheet" />
15
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" />
16
+ <script src="https://cdn.tailwindcss.com"></script>
17
+ <script>
18
+ tailwind.config = {
19
+ theme: {
20
+ extend: {
21
+ colors: {
22
+ brand: {
23
+ 50: '#f0fdf4',
24
+ 100: '#dcfce7',
25
+ 500: '#10b981',
26
+ 600: '#059669',
27
+ 700: '#047857'
28
+ }
29
+ },
30
+ fontFamily: {
31
+ sans: ['Inter', 'sans-serif'],
32
+ mono: ['Fira Code', 'monospace']
33
+ }
34
+ }
35
+ }
36
+ };
37
+ </script>
38
+ <style>
39
+ body {
40
+ font-family: 'Inter', sans-serif;
41
+ background-color: #ffffff;
42
+ color: #1e293b;
43
+ }
44
+
45
+ pre,
46
+ code {
47
+ font-family: 'Fira Code', monospace;
48
+ }
49
+
50
+ .card-hover {
51
+ transition: all 0.2s ease-in-out;
52
+ }
53
+
54
+ .card-hover:hover {
55
+ transform: translateY(-3px);
56
+ box-shadow: 0 12px 24px -10px rgba(0, 0, 0, 0.08);
57
+ }
58
+ </style>
59
+ </head>
60
+
61
+ <body class="bg-white text-slate-800 min-h-screen flex flex-col antialiased">
62
+
63
+
64
+ <!-- Main Content Container -->
65
+ <main class="flex-1 max-w-7xl w-full mx-auto p-4 sm:p-6 lg:p-8 space-y-10">
66
+
67
+ <!-- Breadcrumb (Matching SubDoc design) -->
68
+ <div class="flex items-center gap-2 text-xs text-slate-500 font-mono">
69
+ <a href="../index.html" class="hover:text-slate-900 transition flex items-center gap-1 font-medium">
70
+ <span>🏠</span> Home
71
+ </a>
72
+ <span>/</span>
73
+ <span class="text-slate-400">docs</span>
74
+ <span>/</span>
75
+ <span class="text-indigo-600 font-semibold">samples</span>
76
+ </div>
77
+
78
+ <!-- Header Section -->
79
+ <div class="space-y-2">
80
+ <div
81
+ class="inline-flex items-center gap-2 px-3 py-1 rounded-full bg-indigo-50 border border-indigo-200 text-xs font-mono font-semibold text-indigo-800">
82
+ <span class="w-2 h-2 rounded-full bg-indigo-500 animate-pulse"></span>
83
+ Component Suite &bull; Interactive Samples Hub
84
+ </div>
85
+ <h1 class="text-3xl sm:text-4xl font-extrabold text-slate-900 tracking-tight leading-tight">
86
+ Explore the 3 Core JSON Renderers
87
+ </h1>
88
+ <p class="text-slate-600 text-sm sm:text-base max-w-3xl leading-relaxed">
89
+ Fast, beginner-friendly component guides structured around the KeshavSoft declarative DOM architecture. Each
90
+ component is documented with its complete HTML transformation story, a direct CDN ES module import guide, and a
91
+ global <code
92
+ class="text-emerald-700 font-mono bg-emerald-50 px-1.5 py-0.5 rounded border border-emerald-200">window.ks</code>
93
+ runtime walkthrough.
94
+ </p>
95
+ </div>
96
+
97
+ <!-- 3 Tracks Showcase Grid (Styled exactly like the subDoc image, on white background) -->
98
+ <section class="grid grid-cols-1 lg:grid-cols-3 gap-8">
99
+
100
+ <!-- Track 1: Table Renderer Card -->
101
+ <div
102
+ class="bg-white p-6 sm:p-8 rounded-3xl border border-emerald-300 flex flex-col justify-between relative overflow-hidden group hover:border-emerald-500 transition shadow-sm hover:shadow-md">
103
+ <div
104
+ class="absolute -right-12 -top-12 w-48 h-48 bg-emerald-50 rounded-full blur-3xl pointer-events-none group-hover:bg-emerald-100/60 transition">
105
+ </div>
106
+ <div class="space-y-4 relative z-10">
107
+ <div class="flex items-center justify-between">
108
+ <span
109
+ class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-emerald-50 text-emerald-800 border border-emerald-200 flex items-center gap-1.5">
110
+ <span class="w-1.5 h-1.5 rounded-full bg-emerald-500"></span> Tabular Grid &bull; Multi-Column
111
+ </span>
112
+ <span class="text-3xl">📊</span>
113
+ </div>
114
+
115
+ <h2 class="text-2xl font-bold text-slate-900 group-hover:text-emerald-700 transition">Table Renderer</h2>
116
+ <p class="text-slate-600 text-sm leading-relaxed">
117
+ Fast, structured tabular grid generation from JSON row arrays. Automatically creates table headers, rows,
118
+ striped styling, and hover feedback.
119
+ </p>
120
+
121
+ <div class="space-y-2 pt-2">
122
+ <div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
123
+ </div>
124
+ <ul class="text-xs text-slate-600 space-y-2.5">
125
+ <li class="flex items-start gap-2">
126
+ <span class="text-emerald-600 font-bold font-mono">1.</span>
127
+ <span><strong>The Pipeline:</strong> How <code
128
+ class="text-indigo-700 font-mono bg-indigo-50 px-1 rounded">json-renderers-build</code> compiles
129
+ column/row JSON into tags.</span>
130
+ </li>
131
+ <li class="flex items-start gap-2">
132
+ <span class="text-emerald-600 font-bold font-mono">2.</span>
133
+ <span><strong>CDN Integration:</strong> Direct ES module import from jsDelivr with zero build
134
+ step.</span>
135
+ </li>
136
+ <li class="flex items-start gap-2">
137
+ <span class="text-emerald-600 font-bold font-mono">3.</span>
138
+ <span><strong>window.ks Runtime:</strong> Standard global runtime API for multi-page
139
+ applications.</span>
140
+ </li>
141
+ <li class="flex items-start gap-2">
142
+ <span class="text-emerald-600 font-bold font-mono">4.</span>
143
+ <span><strong>Interactive Playground:</strong> Live DOM mounting sandbox with dynamic row
144
+ inspection.</span>
145
+ </li>
146
+ </ul>
147
+ </div>
148
+ </div>
149
+
150
+ <div class="pt-6 space-y-2 relative z-10">
151
+ <a href="table/index.html"
152
+ class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-emerald-600 to-teal-600 hover:from-emerald-700 hover:to-teal-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
153
+ <span>Read Table Guide &rarr;</span>
154
+ </a>
155
+ <div class="grid grid-cols-2 gap-2 pt-1 text-center">
156
+ <a href="table/cdn.html"
157
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-emerald-300 hover:bg-emerald-50/50 text-slate-700 hover:text-emerald-800 text-xs font-medium transition">
158
+ ⚡ Using CDN
159
+ </a>
160
+ <a href="table/windowKs.html"
161
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-emerald-300 hover:bg-emerald-50/50 text-slate-700 hover:text-emerald-800 text-xs font-medium transition">
162
+ 🌐 window.ks
163
+ </a>
164
+ </div>
165
+ </div>
166
+ </div>
167
+
168
+ <!-- Track 2: Select Renderer Card -->
169
+ <div
170
+ class="bg-white p-6 sm:p-8 rounded-3xl border border-blue-300 flex flex-col justify-between relative overflow-hidden group hover:border-blue-500 transition shadow-sm hover:shadow-md">
171
+ <div
172
+ class="absolute -right-12 -top-12 w-48 h-48 bg-blue-50 rounded-full blur-3xl pointer-events-none group-hover:bg-blue-100/60 transition">
173
+ </div>
174
+ <div class="space-y-4 relative z-10">
175
+ <div class="flex items-center justify-between">
176
+ <span
177
+ class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-blue-50 text-blue-800 border border-blue-200 flex items-center gap-1.5">
178
+ <span class="w-1.5 h-1.5 rounded-full bg-blue-500"></span> Form Input &bull; Dropdown Menu
179
+ </span>
180
+ <span class="text-3xl">▣</span>
181
+ </div>
182
+
183
+ <h2 class="text-2xl font-bold text-slate-900 group-hover:text-blue-700 transition">Select Renderer</h2>
184
+ <p class="text-slate-600 text-sm leading-relaxed">
185
+ Constructs accessible native HTML <code class="text-blue-700 font-mono font-semibold">&lt;select&gt;</code>
186
+ dropdowns from string arrays or value/label objects with active selection management.
187
+ </p>
188
+
189
+ <div class="space-y-2 pt-2">
190
+ <div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
191
+ </div>
192
+ <ul class="text-xs text-slate-600 space-y-2.5">
193
+ <li class="flex items-start gap-2">
194
+ <span class="text-blue-600 font-bold font-mono">1.</span>
195
+ <span><strong>The Pipeline:</strong> Transforming options arrays into declarative DOM
196
+ specifications.</span>
197
+ </li>
198
+ <li class="flex items-start gap-2">
199
+ <span class="text-blue-600 font-bold font-mono">2.</span>
200
+ <span><strong>CDN Integration:</strong> Clean ES module import with option addition playground.</span>
201
+ </li>
202
+ <li class="flex items-start gap-2">
203
+ <span class="text-blue-600 font-bold font-mono">3.</span>
204
+ <span><strong>window.ks Runtime:</strong> Enterprise script integration for corporate admin
205
+ portals.</span>
206
+ </li>
207
+ <li class="flex items-start gap-2">
208
+ <span class="text-blue-600 font-bold font-mono">4.</span>
209
+ <span><strong>Event Handling:</strong> Live change listener with instantaneous selection
210
+ telemetry.</span>
211
+ </li>
212
+ </ul>
213
+ </div>
214
+ </div>
215
+
216
+ <div class="pt-6 space-y-2 relative z-10">
217
+ <a href="select/index.html"
218
+ class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-blue-600 to-indigo-600 hover:from-blue-700 hover:to-indigo-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
219
+ <span>Read Select Guide &rarr;</span>
220
+ </a>
221
+ <div class="grid grid-cols-2 gap-2 pt-1 text-center">
222
+ <a href="select/cdn.html"
223
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-blue-300 hover:bg-blue-50/50 text-slate-700 hover:text-blue-800 text-xs font-medium transition">
224
+ ⚡ Using CDN
225
+ </a>
226
+ <a href="select/windowks.html"
227
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-blue-300 hover:bg-blue-50/50 text-slate-700 hover:text-blue-800 text-xs font-medium transition">
228
+ 🌐 window.ks
229
+ </a>
230
+ </div>
231
+ </div>
232
+ </div>
233
+
234
+ <!-- Track 3: Datalist Renderer Card -->
235
+ <div
236
+ class="bg-white p-6 sm:p-8 rounded-3xl border border-purple-300 flex flex-col justify-between relative overflow-hidden group hover:border-purple-500 transition shadow-sm hover:shadow-md">
237
+ <div
238
+ class="absolute -right-12 -top-12 w-48 h-48 bg-purple-50 rounded-full blur-3xl pointer-events-none group-hover:bg-purple-100/60 transition">
239
+ </div>
240
+ <div class="space-y-4 relative z-10">
241
+ <div class="flex items-center justify-between">
242
+ <span
243
+ class="px-2.5 py-1 rounded-full text-xs font-mono font-semibold bg-purple-50 text-purple-800 border border-purple-200 flex items-center gap-1.5">
244
+ <span class="w-1.5 h-1.5 rounded-full bg-purple-500"></span> Native Autocomplete &bull; Input List
245
+ </span>
246
+ <span class="text-3xl">🔍</span>
247
+ </div>
248
+
249
+ <h2 class="text-2xl font-bold text-slate-900 group-hover:text-purple-700 transition">Datalist Renderer</h2>
250
+ <p class="text-slate-600 text-sm leading-relaxed">
251
+ Binds native HTML5 <code class="text-purple-700 font-mono font-semibold">&lt;datalist&gt;</code> suggestion
252
+ popovers to text inputs with instant autocomplete without heavy JavaScript plugins.
253
+ </p>
254
+
255
+ <div class="space-y-2 pt-2">
256
+ <div class="text-xs font-semibold text-slate-500 uppercase tracking-wider font-mono">What you will learn:
257
+ </div>
258
+ <ul class="text-xs text-slate-600 space-y-2.5">
259
+ <li class="flex items-start gap-2">
260
+ <span class="text-purple-600 font-bold font-mono">1.</span>
261
+ <span><strong>The Pipeline:</strong> Connecting <code
262
+ class="text-purple-700 font-mono">&lt;input list&gt;</code> to <code
263
+ class="text-purple-700 font-mono">&lt;datalist&gt;</code> containers.</span>
264
+ </li>
265
+ <li class="flex items-start gap-2">
266
+ <span class="text-purple-600 font-bold font-mono">2.</span>
267
+ <span><strong>CDN Integration:</strong> Rapid search suggestion generator mounted via jsDelivr
268
+ CDN.</span>
269
+ </li>
270
+ <li class="flex items-start gap-2">
271
+ <span class="text-purple-600 font-bold font-mono">3.</span>
272
+ <span><strong>window.ks Runtime:</strong> Global browser mounting for native search inputs.</span>
273
+ </li>
274
+ <li class="flex items-start gap-2">
275
+ <span class="text-purple-600 font-bold font-mono">4.</span>
276
+ <span><strong>Keystroke Tracking:</strong> Live suggestion matching and user search feedback.</span>
277
+ </li>
278
+ </ul>
279
+ </div>
280
+ </div>
281
+
282
+ <div class="pt-6 space-y-2 relative z-10">
283
+ <a href="datalist/index.html"
284
+ class="w-full py-3 px-4 rounded-xl font-semibold text-sm bg-gradient-to-r from-purple-600 to-indigo-600 hover:from-purple-700 hover:to-indigo-700 text-white flex items-center justify-center gap-2 shadow-sm transition">
285
+ <span>Read Datalist Guide &rarr;</span>
286
+ </a>
287
+ <div class="grid grid-cols-2 gap-2 pt-1 text-center">
288
+ <a href="datalist/cdn.html"
289
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-purple-300 hover:bg-purple-50/50 text-slate-700 hover:text-purple-800 text-xs font-medium transition">
290
+ ⚡ Using CDN
291
+ </a>
292
+ <a href="datalist/windowks.html"
293
+ class="py-2 px-2.5 rounded-lg border border-slate-200 hover:border-purple-300 hover:bg-purple-50/50 text-slate-700 hover:text-purple-800 text-xs font-medium transition">
294
+ 🌐 window.ks
295
+ </a>
296
+ </div>
297
+ </div>
298
+ </div>
299
+
300
+ </section>
301
+
302
+
303
+ </main>
304
+
305
+ <!-- Clean Light Footer -->
306
+ <footer class="border-t border-slate-200 bg-slate-50 py-8 mt-12">
307
+ <div
308
+ class="max-w-7xl mx-auto px-4 sm:px-6 flex flex-col sm:flex-row items-center justify-between gap-4 text-xs text-slate-600">
309
+ <div>
310
+ <span class="text-slate-900 font-semibold">json-renderers</span> &bull; Samples Hub for Table, Select, and
311
+ Datalist
312
+ </div>
313
+ <div class="flex items-center gap-4 flex-wrap">
314
+ <a href="../index.html" class="hover:text-indigo-600 transition">Main Docs</a>
315
+ <a href="table/index.html" class="hover:text-emerald-600 transition">Table Docs</a>
316
+ <a href="select/index.html" class="hover:text-blue-600 transition">Select Docs</a>
317
+ <a href="datalist/index.html" class="hover:text-purple-600 transition">Datalist Docs</a>
318
+ <a href="https://github.com/keshavsoft/json-renderers" target="_blank" rel="noopener noreferrer"
319
+ class="hover:underline">GitHub</a>
320
+ </div>
321
+ </div>
322
+ </footer>
323
+
324
+ </body>
325
+
326
+ </html>