Show HN: KnockKnock – Circular video calls that bring you closer, faster(macOS)

1 pointsposted 9 hours ago
by HamounKarami

2 Comments

prngl

8 hours ago

Looks nice. Maybe share a bit about the implementation (windowing, networking, security, Mac APIs, …)?

HamounKarami

7 hours ago

thanks!

windowing: using a transparent nswindow hosting swiftui views for the floating call ui, and nspopover for the menu bar dropdown. we also toggle nsapp.activationpolicy to hide the dock icon when it's just running in the background

networking: livekit handles the webrtc video/audio (it’s been rock solid), with firebase cloud functions generating the tokens and firestore handling the signaling and presence state

security: standard firebase auth for user management, and we use the native macos keychain (ksecclassgenericpassword) to securely store credentials so you don't have to login every time

mac apis: lots of avfoundation for camera/mic permissions, nsstatusitem for the menu bar integration, and unusernotificationcenter to make sure you actually see incoming calls