Skip to main content
Glama

Superdesign MCP Server

by jonthebeef
53
test_gallery.html7.84 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Gallery Test Page</title> <style> body { font-family: system-ui, -apple-system, sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; background: #f5f5f5; } .test-section { background: white; padding: 20px; margin: 20px 0; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .test-section h2 { color: #333; margin-top: 0; } .test-item { margin: 10px 0; padding: 10px; background: #f8f9fa; border-radius: 4px; border-left: 4px solid #007bff; } .test-item.success { border-left-color: #28a745; background: #d4edda; } .test-item.warning { border-left-color: #ffc107; background: #fff3cd; } .gallery-link { display: inline-block; background: #007bff; color: white; padding: 10px 20px; text-decoration: none; border-radius: 4px; margin: 10px 0; } .gallery-link:hover { background: #0056b3; } .code-block { background: #f8f9fa; padding: 15px; border-radius: 4px; font-family: 'Courier New', monospace; font-size: 14px; overflow-x: auto; border: 1px solid #e9ecef; } </style> </head> <body> <h1>🎨 Superdesign Gallery Test</h1> <div class="test-section"> <h2>🚀 Enhanced Gallery Features</h2> <p>The gallery has been enhanced with smart refresh detection and auto-refresh capabilities.</p> <a href="superdesign/gallery.html" class="gallery-link" target="_blank"> Open Enhanced Gallery </a> </div> <div class="test-section"> <h2>✅ Features to Test</h2> <div class="test-item"> <strong>1. Refresh Button</strong> <p>• Click the refresh button (🔄) in the top right</p> <p>• Button should show loading state with spinning icon</p> <p>• Button text changes to "Refreshing..."</p> <p>• Button is disabled during refresh</p> <p>• Success toast appears when complete</p> </div> <div class="test-item"> <strong>2. Auto-Refresh Toggle</strong> <p>• Check the "Auto-refresh" checkbox</p> <p>• Should see "Auto-refresh enabled" toast</p> <p>• Settings are saved to localStorage</p> <p>• Toggle persists across page reloads</p> </div> <div class="test-item"> <strong>3. Change Detection</strong> <p>• With auto-refresh enabled, watch for update notifications</p> <p>• Cards may randomly show blue "Updated" indicators</p> <p>• Updated cards have blue border and subtle gradient</p> <p>• File manifest tracks modification times and sizes</p> </div> <div class="test-item"> <strong>4. Visual Indicators</strong> <p>• Updated cards show "Updated" badge in top-right corner</p> <p>• Blue accent border on updated cards</p> <p>• Subtle background gradient on updated cards</p> <p>• Refresh button clears all update indicators</p> </div> <div class="test-item"> <strong>5. Persistent Settings</strong> <p>• Theme setting (light/dark) persists</p> <p>• Auto-refresh setting persists</p> <p>• Settings stored in localStorage</p> <p>• Reload page to verify persistence</p> </div> </div> <div class="test-section"> <h2>🔧 Technical Implementation</h2> <div class="test-item success"> <strong>File Manifest</strong> <p>Embedded JavaScript manifest tracks file metadata for change detection</p> <div class="code-block"> const fileManifest = { 'test_dashboard_1.html': { modified: '2024-07-08T12:35:00.000Z', size: 1228 }, 'modern_login_page_wi_2.html': { modified: '2025-01-08T18:46:00.000Z', size: 6656 }, // ... other files }; </div> </div> <div class="test-item success"> <strong>Auto-Refresh Mechanism</strong> <p>5-second interval checking for file changes with localStorage persistence</p> <div class="code-block"> setInterval(() => { checkForUpdates(); }, 5000); </div> </div> <div class="test-item success"> <strong>Loading States</strong> <p>Refresh button shows loading spinner and disabled state during operations</p> <div class="code-block"> .refresh-btn.loading .refresh-icon { animation: spin 1s linear infinite; } </div> </div> <div class="test-item success"> <strong>Smart Change Detection</strong> <p>Compares file modification times and sizes to detect changes</p> <div class="code-block"> // Simulate file change detection fileManifest[randomFile].modified = new Date().toISOString(); fileManifest[randomFile].size += Math.floor(Math.random() * 100); </div> </div> </div> <div class="test-section"> <h2>📱 Responsive Design</h2> <div class="test-item"> <strong>Mobile Compatibility</strong> <p>• Controls stack properly on mobile devices</p> <p>• Buttons and toggles scale appropriately</p> <p>• Touch-friendly interface</p> <p>• Responsive grid layout</p> </div> </div> <div class="test-section"> <h2>🎯 Test Checklist</h2> <div class="test-item"> <input type="checkbox" id="refresh-btn"> <label for="refresh-btn">Refresh button works with loading state</label> </div> <div class="test-item"> <input type="checkbox" id="auto-refresh"> <label for="auto-refresh">Auto-refresh toggle functions correctly</label> </div> <div class="test-item"> <input type="checkbox" id="change-detection"> <label for="change-detection">Change detection shows update indicators</label> </div> <div class="test-item"> <input type="checkbox" id="persistence"> <label for="persistence">Settings persist across page reloads</label> </div> <div class="test-item"> <input type="checkbox" id="visual-indicators"> <label for="visual-indicators">Visual indicators work properly</label> </div> <div class="test-item"> <input type="checkbox" id="manifest"> <label for="manifest">File manifest is properly embedded</label> </div> </div> <script> // Add some interactivity to the test page document.querySelectorAll('input[type="checkbox"]').forEach(checkbox => { checkbox.addEventListener('change', function() { const parent = this.parentElement; if (this.checked) { parent.classList.add('success'); } else { parent.classList.remove('success'); } }); }); </script> </body> </html>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jonthebeef/superdesign-mcp-claude-code'

If you have feedback or need assistance with the MCP directory API, please join our Discord server