Skip to content
Merged

983 #2154

Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
number: 983
title: "Why I Chose Electron Over Native (And I’d Do It Again)"
date: 1772452800000
url: https://traffic.megaphone.fm/FSI5924071996.mp3
youtube_url: https://www.youtube.com/watch?v=vmslGvxObvM
---

Wes and Scott talk about building v_framer, Scott’s custom multi-source video recording app, and why Electron beat Tauri and native APIs for the job. They dig into MKV vs WebM, crash-proof recording, licensing with Stripe and Keygen, auto-updates, and the real challenges of shipping a polished desktop app.

### Show Notes

* **[00:00](#t=00:00)** Welcome to Syntax!
* [March MadCSS](https://madcss.com/)
* **[02:28](#t=02:28)** Why screen recording apps are so frustrating
* **[07:14](#t=07:14)** The requirements behind Scott’s app, [v_framer](https://vframer.video/)
* **[09:47](#t=09:47)** [Tauri](https://v2.tauri.app/), [WKWebView](https://developer.apple.com/documentation/webkit/wkwebview), and blurry screen recording headaches
* **[13:00](#t=13:00)** Why switching to [Electron](https://www.electronjs.org/) was a game changer
* **[14:02](#t=14:02)** [Electrobun](https://blackboard.sh/electrobun) and the hybrid desktop experiment
* **[16:29](#t=16:29)** Browser-based capture vs native APIs
* **[18:50](#t=18:50)** Brought to you by [Sentry.io](https://sentry.io/syntax)
* **[22:32](#t=22:32)** Notarization, certificates, and shipping a Mac app
* **[24:52](#t=24:52)** One-time purchases, trials, and selling desktop software
* **[26:37](#t=26:37)** Self-hosting [Keygen](https://keygen.sh/) for license keys
* **[30:27](#t=30:27)** A scrappy Google Sheets-powered waitlist
* **[31:56](#t=31:56)** Keyboard shortcuts, FPS locks, and app customization
* **[34:50](#t=34:50)** CI/CD and painless auto-updates with Electron

### Hit us up on Socials!

Syntax: [X](https://twitter.com/syntaxfm) [Instagram](https://www.instagram.com/syntax_fm/) [Tiktok](https://www.tiktok.com/@syntaxfm) [LinkedIn](https://www.linkedin.com/company/96077407/admin/feed/posts/) [Threads](https://www.threads.net/@syntax_fm)

Wes: [X](https://twitter.com/wesbos) [Instagram](https://www.instagram.com/wesbos/) [Tiktok](https://www.tiktok.com/@wesbos) [LinkedIn](https://www.linkedin.com/in/wesbos/) [Threads](https://www.threads.net/@wesbos)

Scott: [X](https://twitter.com/stolinski) [Instagram](https://www.instagram.com/stolinski/) [Tiktok](https://www.tiktok.com/@stolinski) [LinkedIn](https://www.linkedin.com/in/stolinski/) [Threads](https://www.threads.net/@stolinski)

Randy: [X](https://twitter.com/randyrektor) [Instagram](https://www.instagram.com/randyrektor/) [YouTube](https://www.youtube.com/@randyrektor) [Threads](https://www.threads.net/@randyrektor)