4 ms·
This looks amazing, very nice work! Curious, why'd you decide to go native instead of Electron? Having done it now, do you think that was that the right call?
by aarondf 6y ago
This looks amazing, very nice work!
Curious, why'd you decide to go native instead of Electron? Having done it now, do you think that was that the right call?
- dceddia 6y agoYeah this was a tricky decision early on. Going with web tech seemed like the most obvious path to MVP since I've got that experience. I started with doing some proof of concept stuff in Electron + Svelte, but pretty quickly it felt like I was hitting a use case that HTML video is not meant for. It's not good at frame-accurate... anything. There was a big old github issue talking about web support for editors like this and it seemed like it was a long way off, if ever. So then I started looking into native stuff. The AVFoundation library looked like a massive leg up. It takes care of reading and writing video and audio, and it's got some good functionality around managing editor concepts like tracks, clips, etc. I looked at Swift UI first, and that felt sort of familiar coming from a React background -- one way data flow and such -- but it also didn't seem fully baked yet, and it would limit the app to 10.15 and newer. I know plenty of devs who hang on to old MacBooks and previous macOS versions for a long while (I'm one myself!) so I didn't want to rule out a huge swath of folks by choosing Swift UI either. That left regular Swift and the old standby AppKit stuff. I used the book Hacking with macOS to get going, which was an amazingly helpful guide. So far I think Swift was a good choice. Time will tell, I guess :)