seawolf2357 commited on
Commit
e344b68
ยท
verified ยท
1 Parent(s): a3ed0ed

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -26
app.py CHANGED
@@ -296,132 +296,132 @@ def load_json_data():
296
  },
297
  {
298
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] Interactive Timeline",
299
- "image_url": "data:image/png;base64," + get_image_base64('timeline.png'),
300
  "prompt": "Create a vertical timeline with animated entry points. When clicking on timeline items, show detailed information with smooth transitions. Include filtering options and scroll animations."
301
  },
302
  {
303
  "name": "[๊ฒŒ์ž„] ์นด๋“œ ๊ธฐ์–ต ๊ฒŒ์ž„",
304
- "image_url": "data:image/png;base64," + get_image_base64('memory.png'),
305
  "prompt": "Create a classic memory matching card game with flip animations. Include a scoring system, timer, and difficulty levels. Add satisfying match/mismatch animations and sound effects using Web Audio API."
306
  },
307
  {
308
  "name": "[์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ] ์ปฌ๋Ÿฌ ํŒ”๋ ˆํŠธ",
309
- "image_url": "data:image/png;base64," + get_image_base64('palette.png'),
310
  "prompt": "๋งˆ์šฐ์Šค ์›€์ง์ž„์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋ณ€ํ•˜๋Š” ์ปฌ๋Ÿฌ ํŒ”๋ ˆํŠธ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ์ƒ‰์ƒ ์„ ํƒ, ์ €์žฅ, ์กฐํ•ฉ ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ๋ถ€๋“œ๋Ÿฌ์šด ๊ทธ๋ผ๋ฐ์ด์…˜ ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
311
  },
312
  {
313
  "name": "[์œ„์ ฏ] ๋‚ ์”จ ์• ๋‹ˆ๋ฉ”์ด์…˜",
314
- "image_url": "data:image/png;base64," + get_image_base64('weather.png'),
315
  "prompt": "ํ˜„์žฌ ๋‚ ์”จ ์ƒํƒœ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜ ์œ„์ ฏ์„ ๋งŒ๋“œ์„ธ์š”. ๋น„, ๋ˆˆ, ๊ตฌ๋ฆ„, ๋ฒˆ๊ฐœ ๋“ฑ์˜ ๋‚ ์”จ ํšจ๊ณผ๋ฅผ Canvas๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ๋ถ€๋“œ๋Ÿฌ์šด ์ „ํ™˜ ํšจ๊ณผ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
316
  },
317
  {
318
  "name": "[์ดํŽ™ํŠธ] ํŒŒํ‹ฐํด ํ…์ŠคํŠธ",
319
- "image_url": "data:image/png;base64," + get_image_base64('particle.png'),
320
  "prompt": "ํ…์ŠคํŠธ๊ฐ€ ํŒŒํ‹ฐํด๋กœ ๋ณ€ํ™˜๋˜๋Š” ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”. ๋งˆ์šฐ์Šค ํ˜ธ๋ฒ„์‹œ ๊ธ€์ž๊ฐ€ ํฉ์–ด์กŒ๋‹ค๊ฐ€ ๋‹ค์‹œ ๋ชจ์ด๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ Canvas๋กœ ๋งŒ๋“œ์„ธ์š”."
321
  },
322
  {
323
  "name": "[3D] ์ฑ…์žฅ ๊ฐค๋Ÿฌ๋ฆฌ",
324
- "image_url": "data:image/png;base64," + get_image_base64('bookshelf.png'),
325
  "prompt": "CSS 3D ๋ณ€ํ™˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํšŒ์ „ํ•˜๋Š” ์ฑ…์žฅ ํ˜•ํƒœ์˜ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๊ฐ ์ฑ…์„ ํด๋ฆญํ•˜๋ฉด ์ƒ์„ธ ์ •๋ณด๊ฐ€ ๋‚˜ํƒ€๋‚˜๋„๋ก ๊ตฌํ˜„ํ•˜์„ธ์š”."
326
  },
327
  {
328
  "name": "[๊ฒŒ์ž„] ๋ฆฌ๋“ฌ ๊ฒŒ์ž„",
329
- "image_url": "data:image/png;base64," + get_image_base64('rhythm.png'),
330
  "prompt": "Web Audio API๋ฅผ ํ™œ์šฉํ•œ ๊ฐ„๋‹จํ•œ ๋ฆฌ๋“ฌ ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ๋–จ์–ด์ง€๋Š” ๋…ธํŠธ์™€ ํƒ€์ด๋ฐ ํŒ์ •, ์ ์ˆ˜ ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
331
  },
332
  {
333
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] SVG ํŒจ์Šค",
334
- "image_url": "data:image/png;base64," + get_image_base64('svg.png'),
335
  "prompt": "SVG ํŒจ์Šค๋ฅผ ๋”ฐ๋ผ ์›€์ง์ด๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”. ๋‹ค์–‘ํ•œ ๋„ํ˜•์ด ๊ทธ๋ ค์ง€๋Š” ๊ณผ์ •์„ ๋ณด์—ฌ์ฃผ๊ณ  ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์ปจํŠธ๋กค์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
336
  },
337
  {
338
  "name": "[๋„๊ตฌ] ๋“œ๋กœ์ž‰ ๋ณด๋“œ",
339
- "image_url": "data:image/png;base64," + get_image_base64('drawing.png'),
340
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•œ ๊ทธ๋ฆฌ๊ธฐ ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋ธŒ๋Ÿฌ์‹œ ํฌ๊ธฐ, ์ƒ‰์ƒ ๋ณ€๊ฒฝ, ์ง€์šฐ๊ฐœ ๊ธฐ๋Šฅ๊ณผ ๊ทธ๋ฆฌ๊ธฐ ๊ธฐ๋ก ์ €์žฅ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
341
  },
342
  {
343
  "name": "[๊ฒŒ์ž„] ํผ์ฆ ์Šฌ๋ผ์ด๋“œ",
344
- "image_url": "data:image/png;base64," + get_image_base64('puzzle.png'),
345
  "prompt": "์ˆซ์ž๋‚˜ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•œ ์Šฌ๋ผ์ด๋“œ ํผ์ฆ ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ์ด๋™ ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ์™„์„ฑ ํ™•์ธ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
346
  },
347
  {
348
  "name": "[์ดํŽ™ํŠธ] ํŒŒํ‹ฐํด ์ปค์„œ",
349
- "image_url": "data:image/png;base64," + get_image_base64('cursor.png'),
350
  "prompt": "๋งˆ์šฐ์Šค ์ปค์„œ๋ฅผ ๋”ฐ๋ผ๋‹ค๋‹ˆ๋Š” ํŒŒํ‹ฐํด ํšจ๊ณผ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ํŒŒํ‹ฐํด ํŒจํ„ด๊ณผ ์ƒ‰์ƒ ๋ณ€ํ™”๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
351
  },
352
  {
353
  "name": "[๋„๊ตฌ] ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋‹ฌ๋ ฅ",
354
- "image_url": "data:image/png;base64," + get_image_base64('calendar.png'),
355
  "prompt": "๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์œผ๋กœ ์ผ์ •์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ฌ๋ ฅ์„ ๋งŒ๋“œ์„ธ์š”. ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ์™€ ์ผ์ • ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
356
  },
357
  {
358
  "name": "[๊ฒŒ์ž„] ํƒ€์ž ๊ฒŒ์ž„",
359
- "image_url": "data:image/png;base64," + get_image_base64('typing.png'),
360
  "prompt": "๋–จ์–ด์ง€๋Š” ๋‹จ์–ด๋ฅผ ํƒ€์ดํ•‘ํ•˜์—ฌ ์ ์ˆ˜๋ฅผ ์–ป๋Š” ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ๋‚œ์ด๋„ ์กฐ์ ˆ๊ณผ ํšจ๊ณผ์Œ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
361
  },
362
  {
363
  "name": "[์‹œ๊ฐํ™”] ๋ฐ์ดํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜",
364
- "image_url": "data:image/png;base64," + get_image_base64('datavis.png'),
365
  "prompt": "D3.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ณ€ํ™”๋ฅผ ์• ๋‹ˆ๋ฉ”์ด์…˜์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ์ฐจํŠธ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ์ „ํ™˜ ํšจ๊ณผ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
366
  },
367
  {
368
  "name": "[์‹œ๋ฎฌ๋ ˆ์ด์…˜] ๋ฌผ๋ฆฌ ์—”์ง„",
369
- "image_url": "data:image/png;base64," + get_image_base64('physics.png'),
370
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•œ ๋ฌผ๋ฆฌ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”. ์ค‘๋ ฅ, ์ถฉ๋Œ, ํƒ„์„ฑ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•œ ๊ณต ํŠ€๊ธฐ๊ธฐ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋งŒ๋“œ์„ธ์š”."
371
  },
372
  {
373
  "name": "[์˜ค๋””์˜ค] ์‚ฌ์šด๋“œ ๋ฏน์„œ",
374
- "image_url": "data:image/png;base64," + get_image_base64('mixer.png'),
375
  "prompt": "Web Audio API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ์Œ์›์„ ๋ฏน์‹ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋ณผ๋ฅจ, ํŒจ๋‹, ์ดํŽ™ํŠธ ์กฐ์ ˆ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
376
  },
377
  {
378
  "name": "[3D] ์นด๋“œ ๊ฐค๋Ÿฌ๋ฆฌ",
379
- "image_url": "data:image/png;base64," + get_image_base64('3dcards.png'),
380
  "prompt": "Three.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ 3D ๊ณต๊ฐ„์—์„œ ํšŒ์ „ํ•˜๋Š” ์นด๋“œ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋งˆ์šฐ์Šค ์ธํ„ฐ๋ž™์…˜๊ณผ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
381
  },
382
  {
383
  "name": "[์‹œ๊ฐํ™”] ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋งต",
384
- "image_url": "data:image/png;base64," + get_image_base64('map.png'),
385
  "prompt": "SVG๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์ง€๋„๋ฅผ ๋งŒ๋“œ์„ธ์š”. ์ง€์—ญ ์„ ํƒ, ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”, ์คŒ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
386
  },
387
  {
388
  "name": "[๋„๊ตฌ] ํฌํ†  ์—๋””ํ„ฐ",
389
- "image_url": "data:image/png;base64," + get_image_base64('photoeditor.png'),
390
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ๋ณธ์ ์ธ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ํ•„ํ„ฐ ์ ์šฉ, ์ž๋ฅด๊ธฐ, ํšŒ์ „ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
391
  },
392
  {
393
  "name": "[์‹œ๊ฐํ™”] ๋งˆ์ธ๋“œ๋งต",
394
- "image_url": "data:image/png;base64," + get_image_base64('mindmap.png'),
395
  "prompt": "D3.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์  ๋งˆ์ธ๋“œ๋งต์„ ๋งŒ๋“œ์„ธ์š”. ๋…ธ๋“œ ์ถ”๊ฐ€/์‚ญ์ œ, ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ, ํ™•์žฅ/์ถ•์†Œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
396
  },
397
  {
398
  "name": "[3D] ์ง€ํ˜• ์ƒ์„ฑ๊ธฐ",
399
- "image_url": "data:image/png;base64," + get_image_base64('terrain.png'),
400
  "prompt": "Three.js๋กœ ํ”„๋กœ์‹œ์ €๋Ÿด ์ง€ํ˜•์„ ์ƒ์„ฑํ•˜์„ธ์š”. ๊ณ ๋„, ํ…์Šค์ฒ˜, ๋ฌผ ํšจ๊ณผ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ์„ธ์š”."
401
  },
402
  {
403
  "name": "[3D] ํ…์ŠคํŠธ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ",
404
- "image_url": "data:image/png;base64," + get_image_base64('3dtext.png'),
405
  "prompt": "Three.js๋กœ 3D ํ…์ŠคํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ๋ณ€ํ™˜ ํšจ๊ณผ์™€ ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜ ์ž…์ž ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
406
  },
407
  {
408
  "name": "[๋„๊ตฌ] ํŒจํ„ด ๋””์ž์ด๋„ˆ",
409
- "image_url": "data:image/png;base64," + get_image_base64('pattern.png'),
410
  "prompt": "SVG๋กœ ๋ฐ˜๋ณต ํŒจํ„ด์„ ๋””์ž์ธํ•˜๋Š” ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋Œ€์นญ ์˜ต์…˜, ์ƒ‰์ƒ ์Šคํ‚ค๋งˆ ๊ด€๋ฆฌ, ์‹ค์‹œ๊ฐ„ ํ”„๋ฆฌ๋ทฐ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
411
  },
412
  {
413
  "name": "[๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด] ์‹ค์‹œ๊ฐ„ ํ•„ํ„ฐ ์นด๋ฉ”๋ผ",
414
- "image_url": "data:image/png;base64," + get_image_base64('camera.png'),
415
  "prompt": "WebRTC์™€ Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ๋น„๋””์˜ค ํ•„ํ„ฐ ์•ฑ์„ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ํšจ๊ณผ๋ฅผ ๏ฟฝ๏ฟฝํ˜„ํ•˜์„ธ์š”."
416
  },
417
  {
418
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] Interactive Stars",
419
- "image_url": "data:image/png;base64," + get_image_base64('stars.png'),
420
  "prompt": "Interactive Stars: Watch stars and constellations appear in the night sky as you move your mouse."
421
  },
422
  {
423
  "name": "[์‹œ๊ฐํ™”] ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ํ”Œ๋กœ์šฐ",
424
- "image_url": "data:image/png;base64," + get_image_base64('dataflow.png'),
425
  "prompt": "D3.js๋กœ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ์‹œ๊ฐํ™”ํ•˜์„ธ์š”. ๋…ธ๋“œ ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
426
  },
427
  {
 
296
  },
297
  {
298
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] Interactive Timeline",
299
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
300
  "prompt": "Create a vertical timeline with animated entry points. When clicking on timeline items, show detailed information with smooth transitions. Include filtering options and scroll animations."
301
  },
302
  {
303
  "name": "[๊ฒŒ์ž„] ์นด๋“œ ๊ธฐ์–ต ๊ฒŒ์ž„",
304
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
305
  "prompt": "Create a classic memory matching card game with flip animations. Include a scoring system, timer, and difficulty levels. Add satisfying match/mismatch animations and sound effects using Web Audio API."
306
  },
307
  {
308
  "name": "[์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ] ์ปฌ๋Ÿฌ ํŒ”๋ ˆํŠธ",
309
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
310
  "prompt": "๋งˆ์šฐ์Šค ์›€์ง์ž„์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋ณ€ํ•˜๋Š” ์ปฌ๋Ÿฌ ํŒ”๋ ˆํŠธ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ์ƒ‰์ƒ ์„ ํƒ, ์ €์žฅ, ์กฐํ•ฉ ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ๋ถ€๋“œ๋Ÿฌ์šด ๊ทธ๋ผ๋ฐ์ด์…˜ ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
311
  },
312
  {
313
  "name": "[์œ„์ ฏ] ๋‚ ์”จ ์• ๋‹ˆ๋ฉ”์ด์…˜",
314
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
315
  "prompt": "ํ˜„์žฌ ๋‚ ์”จ ์ƒํƒœ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜ ์œ„์ ฏ์„ ๋งŒ๋“œ์„ธ์š”. ๋น„, ๋ˆˆ, ๊ตฌ๋ฆ„, ๋ฒˆ๊ฐœ ๋“ฑ์˜ ๋‚ ์”จ ํšจ๊ณผ๋ฅผ Canvas๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ๋ถ€๋“œ๋Ÿฌ์šด ์ „ํ™˜ ํšจ๊ณผ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
316
  },
317
  {
318
  "name": "[์ดํŽ™ํŠธ] ํŒŒํ‹ฐํด ํ…์ŠคํŠธ",
319
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
320
  "prompt": "ํ…์ŠคํŠธ๊ฐ€ ํŒŒํ‹ฐํด๋กœ ๋ณ€ํ™˜๋˜๋Š” ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”. ๋งˆ์šฐ์Šค ํ˜ธ๋ฒ„์‹œ ๊ธ€์ž๊ฐ€ ํฉ์–ด์กŒ๋‹ค๊ฐ€ ๋‹ค์‹œ ๋ชจ์ด๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ Canvas๋กœ ๋งŒ๋“œ์„ธ์š”."
321
  },
322
  {
323
  "name": "[3D] ์ฑ…์žฅ ๊ฐค๋Ÿฌ๋ฆฌ",
324
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
325
  "prompt": "CSS 3D ๋ณ€ํ™˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํšŒ์ „ํ•˜๋Š” ์ฑ…์žฅ ํ˜•ํƒœ์˜ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๊ฐ ์ฑ…์„ ํด๋ฆญํ•˜๋ฉด ์ƒ์„ธ ์ •๋ณด๊ฐ€ ๋‚˜ํƒ€๋‚˜๋„๋ก ๊ตฌํ˜„ํ•˜์„ธ์š”."
326
  },
327
  {
328
  "name": "[๊ฒŒ์ž„] ๋ฆฌ๋“ฌ ๊ฒŒ์ž„",
329
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
330
  "prompt": "Web Audio API๋ฅผ ํ™œ์šฉํ•œ ๊ฐ„๋‹จํ•œ ๋ฆฌ๋“ฌ ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ๋–จ์–ด์ง€๋Š” ๋…ธํŠธ์™€ ํƒ€์ด๋ฐ ํŒ์ •, ์ ์ˆ˜ ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
331
  },
332
  {
333
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] SVG ํŒจ์Šค",
334
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
335
  "prompt": "SVG ํŒจ์Šค๋ฅผ ๋”ฐ๋ผ ์›€์ง์ด๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”. ๋‹ค์–‘ํ•œ ๋„ํ˜•์ด ๊ทธ๋ ค์ง€๋Š” ๊ณผ์ •์„ ๋ณด์—ฌ์ฃผ๊ณ  ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์ปจํŠธ๋กค์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
336
  },
337
  {
338
  "name": "[๋„๊ตฌ] ๋“œ๋กœ์ž‰ ๋ณด๋“œ",
339
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
340
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•œ ๊ทธ๋ฆฌ๊ธฐ ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋ธŒ๋Ÿฌ์‹œ ํฌ๊ธฐ, ์ƒ‰์ƒ ๋ณ€๊ฒฝ, ์ง€์šฐ๊ฐœ ๊ธฐ๋Šฅ๊ณผ ๊ทธ๋ฆฌ๊ธฐ ๊ธฐ๋ก ์ €์žฅ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
341
  },
342
  {
343
  "name": "[๊ฒŒ์ž„] ํผ์ฆ ์Šฌ๋ผ์ด๋“œ",
344
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
345
  "prompt": "์ˆซ์ž๋‚˜ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•œ ์Šฌ๋ผ์ด๋“œ ํผ์ฆ ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ์ด๋™ ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ์™„์„ฑ ํ™•์ธ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
346
  },
347
  {
348
  "name": "[์ดํŽ™ํŠธ] ํŒŒํ‹ฐํด ์ปค์„œ",
349
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
350
  "prompt": "๋งˆ์šฐ์Šค ์ปค์„œ๋ฅผ ๋”ฐ๋ผ๋‹ค๋‹ˆ๋Š” ํŒŒํ‹ฐํด ํšจ๊ณผ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ํŒŒํ‹ฐํด ํŒจํ„ด๊ณผ ์ƒ‰์ƒ ๋ณ€ํ™”๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
351
  },
352
  {
353
  "name": "[๋„๊ตฌ] ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋‹ฌ๋ ฅ",
354
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
355
  "prompt": "๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์œผ๋กœ ์ผ์ •์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ฌ๋ ฅ์„ ๋งŒ๋“œ์„ธ์š”. ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ์™€ ์ผ์ • ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
356
  },
357
  {
358
  "name": "[๊ฒŒ์ž„] ํƒ€์ž ๊ฒŒ์ž„",
359
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
360
  "prompt": "๋–จ์–ด์ง€๋Š” ๋‹จ์–ด๋ฅผ ํƒ€์ดํ•‘ํ•˜์—ฌ ์ ์ˆ˜๋ฅผ ์–ป๋Š” ๊ฒŒ์ž„์„ ๋งŒ๋“œ์„ธ์š”. ๋‚œ์ด๋„ ์กฐ์ ˆ๊ณผ ํšจ๊ณผ์Œ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
361
  },
362
  {
363
  "name": "[์‹œ๊ฐํ™”] ๋ฐ์ดํ„ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜",
364
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
365
  "prompt": "D3.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ณ€ํ™”๋ฅผ ์• ๋‹ˆ๋ฉ”์ด์…˜์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ์ฐจํŠธ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ์ „ํ™˜ ํšจ๊ณผ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
366
  },
367
  {
368
  "name": "[์‹œ๋ฎฌ๋ ˆ์ด์…˜] ๋ฌผ๋ฆฌ ์—”์ง„",
369
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
370
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ„๋‹จํ•œ ๋ฌผ๋ฆฌ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”. ์ค‘๋ ฅ, ์ถฉ๋Œ, ํƒ„์„ฑ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•œ ๊ณต ํŠ€๊ธฐ๊ธฐ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋งŒ๋“œ์„ธ์š”."
371
  },
372
  {
373
  "name": "[์˜ค๋””์˜ค] ์‚ฌ์šด๋“œ ๋ฏน์„œ",
374
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
375
  "prompt": "Web Audio API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ์Œ์›์„ ๋ฏน์‹ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋ณผ๋ฅจ, ํŒจ๋‹, ์ดํŽ™ํŠธ ์กฐ์ ˆ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
376
  },
377
  {
378
  "name": "[3D] ์นด๋“œ ๊ฐค๋Ÿฌ๋ฆฌ",
379
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
380
  "prompt": "Three.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ 3D ๊ณต๊ฐ„์—์„œ ํšŒ์ „ํ•˜๋Š” ์นด๋“œ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋งˆ์šฐ์Šค ์ธํ„ฐ๋ž™์…˜๊ณผ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”."
381
  },
382
  {
383
  "name": "[์‹œ๊ฐํ™”] ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋งต",
384
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
385
  "prompt": "SVG๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ์ง€๋„๋ฅผ ๋งŒ๋“œ์„ธ์š”. ์ง€์—ญ ์„ ํƒ, ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”, ์คŒ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
386
  },
387
  {
388
  "name": "[๋„๊ตฌ] ํฌํ†  ์—๋””ํ„ฐ",
389
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
390
  "prompt": "Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ๋ณธ์ ์ธ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ํ•„ํ„ฐ ์ ์šฉ, ์ž๋ฅด๊ธฐ, ํšŒ์ „ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
391
  },
392
  {
393
  "name": "[์‹œ๊ฐํ™”] ๋งˆ์ธ๋“œ๋งต",
394
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
395
  "prompt": "D3.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์  ๋งˆ์ธ๋“œ๋งต์„ ๋งŒ๋“œ์„ธ์š”. ๋…ธ๋“œ ์ถ”๊ฐ€/์‚ญ์ œ, ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ, ํ™•์žฅ/์ถ•์†Œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜์„ธ์š”."
396
  },
397
  {
398
  "name": "[3D] ์ง€ํ˜• ์ƒ์„ฑ๊ธฐ",
399
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
400
  "prompt": "Three.js๋กœ ํ”„๋กœ์‹œ์ €๋Ÿด ์ง€ํ˜•์„ ์ƒ์„ฑํ•˜์„ธ์š”. ๊ณ ๋„, ํ…์Šค์ฒ˜, ๋ฌผ ํšจ๊ณผ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ์„ธ์š”."
401
  },
402
  {
403
  "name": "[3D] ํ…์ŠคํŠธ ์• ๋‹ˆ๋ฉ”์ดํ„ฐ",
404
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
405
  "prompt": "Three.js๋กœ 3D ํ…์ŠคํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ๋ณ€ํ™˜ ํšจ๊ณผ์™€ ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜ ์ž…์ž ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
406
  },
407
  {
408
  "name": "[๋„๊ตฌ] ํŒจํ„ด ๋””์ž์ด๋„ˆ",
409
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
410
  "prompt": "SVG๋กœ ๋ฐ˜๋ณต ํŒจํ„ด์„ ๋””์ž์ธํ•˜๋Š” ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ๋Œ€์นญ ์˜ต์…˜, ์ƒ‰์ƒ ์Šคํ‚ค๋งˆ ๊ด€๋ฆฌ, ์‹ค์‹œ๊ฐ„ ํ”„๋ฆฌ๋ทฐ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
411
  },
412
  {
413
  "name": "[๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด] ์‹ค์‹œ๊ฐ„ ํ•„ํ„ฐ ์นด๋ฉ”๋ผ",
414
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
415
  "prompt": "WebRTC์™€ Canvas๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ๋น„๋””์˜ค ํ•„ํ„ฐ ์•ฑ์„ ๋งŒ๋“œ์„ธ์š”. ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ํšจ๊ณผ๋ฅผ ๏ฟฝ๏ฟฝํ˜„ํ•˜์„ธ์š”."
416
  },
417
  {
418
  "name": "[์• ๋‹ˆ๋ฉ”์ด์…˜] Interactive Stars",
419
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
420
  "prompt": "Interactive Stars: Watch stars and constellations appear in the night sky as you move your mouse."
421
  },
422
  {
423
  "name": "[์‹œ๊ฐํ™”] ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ํ”Œ๋กœ์šฐ",
424
+ "image_url": "data:image/png;base64," + get_image_base64('cat.png'),
425
  "prompt": "D3.js๋กœ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ์‹œ๊ฐํ™”ํ•˜์„ธ์š”. ๋…ธ๋“œ ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ๊ตฌํ˜„ํ•˜์„ธ์š”."
426
  },
427
  {