Spaces:
Running
Running
You are an experienced frontend engineer and creative technologist. Your task is to design and implement a fully client-side web application that generates a dynamic calendar wallpaper image. The project must be suitable for hosting on GitHub Pages (static hosting only, no backend, no server-side code). The application must rely исключительно on HTML, CSS, and JavaScript running in the browser.
5ba9e29 verified | <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> | |
| <meta name="apple-mobile-web-app-capable" content="yes"> | |
| <title>ChronoCanvas — Calendar Wallpaper</title> | |
| <link rel="stylesheet" href="style.css"> | |
| <style> | |
| * { | |
| margin: 0; | |
| padding: 0; | |
| box-sizing: border-box; | |
| } | |
| html, body { | |
| width: 100%; | |
| height: 100%; | |
| overflow: hidden; | |
| background: #0f172a; | |
| } | |
| #loading { | |
| position: fixed; | |
| inset: 0; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 16px; | |
| background: #0f172a; | |
| color: #94a3b8; | |
| font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; | |
| font-size: 14px; | |
| z-index: 100; | |
| transition: opacity 0.3s ease; | |
| } | |
| #loading.hidden { | |
| opacity: 0; | |
| pointer-events: none; | |
| } | |
| .spinner { | |
| width: 40px; | |
| height: 40px; | |
| border: 2px solid rgba(14, 165, 233, 0.2); | |
| border-top-color: #0ea5e9; | |
| border-radius: 50%; | |
| animation: spin 1s linear infinite; | |
| } | |
| @keyframes spin { | |
| to { transform: rotate(360deg); } | |
| } | |
| #wallpaper-canvas { | |
| display: block; | |
| width: 100vw; | |
| height: 100vh; | |
| object-fit: contain; | |
| } | |
| /* For iOS Shortcuts: ensure clean capture */ | |
| @media print { | |
| #loading { display: none ; } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div id="loading"> | |
| <div class="spinner"></div> | |
| <span>Generating wallpaper...</span> | |
| </div> | |
| <canvas id="wallpaper-canvas"></canvas> | |
| <script src="script.js"></script> | |
| </body> | |
| </html> |