A cross-platform Electron.NET frontend for youtube-dl.
See the main page for youtube-dl for more information.
Theoretically, any Electron and .NET Core supported platform.
NOTE: All platforms require the appropriate youtube-dl binary in PATH or placed alongside the Yodel binary.
- .NET Core Runtime 2.x (or compatible .NET Framework)
Linux (check Issues for known problems)
- .NET Core Runtime 2.x
- Currently untested
Downloading a video
Console for extra information
- Allow multiple downloads at once, each download in its own card panel
- Implement settings profiles
- Allow using different settings profiles for different downloads
- Allow saving settings profile as default
- Refactor with Angular (relies on Electron.NET update allowing application-level node packages)
All contributions are welcome. Electron.NET is still a very new framework and I'm new to Electron in general, so I'm sure I haven't written idiomatic Electron code. Any style corrections are welcome.
Development environment consists of:
- Visual Studio 2017 / Visual Studio Code
- NodeJS 8.6.x
- .NET Core 2.x
Use Visual Studio or the following .NET Core CLI commands.
dotnet restore dotnet electronize start
This will run the application in debug mode.
dotnet electronize build <platform>
This will build and package the application for the specified platform.
Platform is optional and will default to the currently running system.
Platform options are
NOTE: Building for the macOS platform does not currently work on Windows. Use Linux or macOS itself.
Debug the UI itself using Electron's built-in debugging tools. These can be opened with
Ctrl+Shift+I while running the application in debug mode.
Debug the .NET code by attaching the debugger to the
Yodel.exe (or similarly named) process.