Released on
-2 min read
Written by Joar Maltesson
This was my first experience writing desktop applications with Tauri and Rust. It was an interesting experience. The program works well. The main problem is that I didn't implement the methods to fetch videos from youtube myself. On some videos everything works as intended but on some videos some or all of the video formats don't show up. This causes limited possibility of choosing the quality of the download and sometimes completely stops you from downloading video. As I myself didn't implement the fetcher there isn't really a way for me to debug this without forking the library and changing the underlying code. My inexperience with Rust really showed with this project too. Writing even more basic stuff turned out to be a problem in Rust when you have never previuously used the language. The program also requires a FFmpeg so I had to find a way to make sure FFmpeg is installed on the system. Luckily there was a FFmpeg sidecar crate that solved this problem for me. The UI is written in NEXT JS using shadcn UI. It is nothing exceptional, it's the minimal UI for the job with some nice touches.
In conclusion the project was a fun challenge but I should spend some more time actually learning Rust before attempting something like this again to avoid some of the friction I ran into with using a new language. If you want to see the result you can download the app here or view the full source code at github.com/JoarM/rust-youtube-downloader.