Commit Graph

5 Commits

Author SHA1 Message Date
kappa
7463a2a481 Fix medium priority issues from code review
- Add DEPLOY_TIMING constants for deployment simulation
- Add null checks in switchTab function for consistency
- Add role="radiogroup" and fieldset/legend to wizard steps
- Add role="log" and aria-live="polite" to chat container
- Add bottom border to active pricing region button for better visual distinction

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 23:44:13 +09:00
kappa
b1468b48a2 Improve security, accessibility, and performance
- Add Content Security Policy meta tag for XSS protection
- Add width/height to image for CLS prevention
- Add aria-hidden to decorative SVG icons (7 locations)
- Refactor inline onclick to addEventListener for CSP compliance
- Add visibility-aware setInterval for ping updates
- Add keyboard navigation (Arrow keys) for tab panels

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 23:35:46 +09:00
kappa
4c3bb09913 Fix critical and high priority issues from code review
Critical fixes:
- Add defer to app.js for non-blocking loading
- Add skip link and main landmark for accessibility
- Fix ARIA tab state dynamic updates

High priority fixes:
- Add rel="noopener noreferrer" to external links
- Implement non-blocking Google Fonts loading
- Improve color contrast (text-slate-500 → text-slate-400)
- Consolidate price data to single source (PRICING_DATA)
- Add TELEGRAM_BOT_URL constant

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 23:27:21 +09:00
kappa
f41ef0465a Implement conversational wizard for server launcher modal
- Convert modal to step-by-step chat-style wizard
- Flow: Region → Plan → OS → Payment → Confirm → Deploy
- Add chat message history with bot/user bubbles
- Support yearly payment with 17% discount calculation
- Add back button for returning to previous steps
- Widen modal (max-w-md sm:max-w-lg) for better UX
- Add deploy progress simulation with logs

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 20:50:55 +09:00
kappa
1d052deb8d Refactor: Extract JS to app.js and add footer legal links
- Extract inline Alpine.js code to separate app.js file
- Unify pricing data in single PRICING_DATA source
- Convert static pricing tables to dynamic Alpine.js templates
- Add footer links for Terms, Privacy Policy, SLA (Telegram bot deep links)
- Add ESC key handler for modal close
- Add aria-label to pricing table for accessibility
- Reduce index.html from 1023 to 862 lines

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 20:11:42 +09:00