Skip to content

feat(server): self-signed TLS + voice iOS fixes#120

Merged
dimakis merged 2 commits intomainfrom
feat/self-signed-tls
Apr 6, 2026
Merged

feat(server): self-signed TLS + voice iOS fixes#120
dimakis merged 2 commits intomainfrom
feat/self-signed-tls

Conversation

@dimakis
Copy link
Copy Markdown
Owner

@dimakis dimakis commented Apr 6, 2026

Summary

  • Adds optional TLS support: if certs/cert.pem and certs/key.pem exist, Mitzo serves over HTTPS
  • Includes scripts/generate-cert.sh for generating self-signed certs with SAN
  • MicButton now uses touch events as primary handler on iOS (pointer events as desktop fallback)
  • Restores dynamic YAPPER_URL using window.location.hostname

This unblocks voice (getUserMedia) on iOS over Tailscale, which requires a secure origin.

Test plan

  • Access Mitzo at https://dimitris-macbook-pro.taildfe858.ts.net:3100 from iPhone
  • Accept cert, trust in Settings → Certificate Trust Settings
  • Verify mic button responds to press-and-hold
  • Verify desktop HTTP fallback still works when certs are absent

🤖 Generated with Claude Code

dimakis and others added 2 commits April 6, 2026 22:48
iOS browsers require HTTPS for getUserMedia (microphone access).
The server now detects certs/cert.pem and certs/key.pem at startup
and serves over HTTPS when present, falling back to HTTP otherwise.
Includes a generate-cert.sh script for creating self-signed certs
with SAN support.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
MicButton now uses onTouchStart/onTouchEnd as primary handlers on mobile
with pointer events as desktop fallback. Restores YAPPER_URL to use
window.location.hostname for remote access.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@dimakis dimakis merged commit 2b87b16 into main Apr 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant