This folder contains a .NET solution that hosts a Chromium Embedded Framework (CEF) shell with hooks for a media download manager. The code is structured according to the browser-plan.md document.
PulseBrowser.App— WPF host that renders the tab UI, omnibox, and embedsChromiumWebBrowser.PulseBrowser.Core— Shared models (DownloadJob,TabState) and services (SettingsService).PulseBrowser.Downloader— Wrapper aroundyt-dlpthat queues video downloads and emits progress viaWeakReferenceMessenger.
- Install the latest .NET 8 SDK.
- Install Visual Studio 2022 or
dotnetCLI support for WPF workloads. - Download
yt-dlp.exeandffmpeg.exeintotools/.
cd PulseBrowser
dotnet restore
dotnet build PulseBrowser.sln
dotnet run --project src/PulseBrowser.App/PulseBrowser.App.csprojThe WPF shell will open with a single tab pointing to YouTube. Use the omnibox to navigate; press Download to queue the current page in the downloader service (requires yt-dlp.exe).
- Flesh out tab management and download drawer UI.
- Persist download history using LiteDB.
- Add a settings flyout where users can configure download directories, hardware acceleration, and ad-block toggles.
Refer back to new/browser-plan.md for the long-term roadmap.