A full featured web-browser built using C# and CefSharp
C#
1,031
247 commits
updated Apr 22, 2025

SharpBrowser is the fastest and most full-featured open source C# web browser there is! Slightly faster than Google Chrome when rendering web pages due to lightweight CEF renderer. We compared every available .NET browsing engine and finally settled on the high-performance CefSharp. Released under the permissive MIT license.

AppData folder| Hotkeys | Function |
|---|---|
| Ctrl+MouseWheel | Zoom in/out |
| Ctrl+T | Add a new tab |
| Ctrl+W | Close active tab |
| Ctrl+MiddleClick | Close Tab |
| F5 | Refresh active tab |
| F11 | Toggle fullscreen |
| F12 | Open developer tools |
| Ctrl+Tab | Switch to the next tab |
| Ctrl+Shift+Tab | Switch to the previous tab |
| Ctrl+F | Open search bar (Enter to find next, Esc to close) |
| Ctrl+P | |
| Ctrl+Shift+P | Print to PDF |
You need .NET 8 on Windows 64-bit.
You need VC++ 2019 Runtime (64-bit)
You might need VC++ 2017 Runtime (64-bit)
You need to install the version of VC++ Runtime that CEFSharp needs. As per our CefSharp version, according to this, we need the above versions
To customize the browser branding, name, URL, default search engine, default proxy, modify the BrowserConfig class.
To customize the application icon, change sharpbrowser.ico inside the Resources folder.
To customize the tab size and tab colors, modify the BrowserTabStyle class.
To enable or disable Web Camera, Microphone, Javascript, WebGL, WebRTC, WebMIDI, LocalStorage, modify the BrowserConfig class.
To register hotkeys for your own commands, modify the HotkeyManager class.
To register your own commands into the main menu, open the form designed for MainForm and click the MainMenu object. Add IconMenuItem objects into that menu.
To register your own commands into the page context-menu, modify ContextMenuHandler.OnBeforeContextMenu function, and then implement the command inside ContextMenuHandler.OnContextMenuCommand.
To setup how web app permissions are handled, modify PermissionHandler.OnShowPermissionPrompt (some flags are already inside BrowserConfig and can easily be changed).
To add new settings saved in the JSON file, simply call ConfigManager.Get* and ConfigManager.Set anywhere in your code. It will save into the file automatically.
MainForm.cs - main web browser UI and related functionalityManagers - classes that manage various types of browsing functionality, like settings, downloads and hotkeysHandlers - various handlers that we have registered with CefSharp that enable deeper integration between us and CefSharpbin - Binaries are included in the bin folder due to the complex CefSharp setup required. Don't empty this folder.bin/storage - HTML and JS required for downloads manager and custom error pagesA full featured web-browser built using C# and CefSharp
C#
1,031
247 commits
updated Apr 22, 2025

SharpBrowser is the fastest and most full-featured open source C# web browser there is! Slightly faster than Google Chrome when rendering web pages due to lightweight CEF renderer. We compared every available .NET browsing engine and finally settled on the high-performance CefSharp. Released under the permissive MIT license.

AppData folder| Hotkeys | Function |
|---|---|
| Ctrl+MouseWheel | Zoom in/out |
| Ctrl+T | Add a new tab |
| Ctrl+W | Close active tab |
| Ctrl+MiddleClick | Close Tab |
| F5 | Refresh active tab |
| F11 | Toggle fullscreen |
| F12 | Open developer tools |
| Ctrl+Tab | Switch to the next tab |
| Ctrl+Shift+Tab | Switch to the previous tab |
| Ctrl+F | Open search bar (Enter to find next, Esc to close) |
| Ctrl+P | |
| Ctrl+Shift+P | Print to PDF |
You need .NET 8 on Windows 64-bit.
You need VC++ 2019 Runtime (64-bit)
You might need VC++ 2017 Runtime (64-bit)
You need to install the version of VC++ Runtime that CEFSharp needs. As per our CefSharp version, according to this, we need the above versions
To customize the browser branding, name, URL, default search engine, default proxy, modify the BrowserConfig class.
To customize the application icon, change sharpbrowser.ico inside the Resources folder.
To customize the tab size and tab colors, modify the BrowserTabStyle class.
To enable or disable Web Camera, Microphone, Javascript, WebGL, WebRTC, WebMIDI, LocalStorage, modify the BrowserConfig class.
To register hotkeys for your own commands, modify the HotkeyManager class.
To register your own commands into the main menu, open the form designed for MainForm and click the MainMenu object. Add IconMenuItem objects into that menu.
To register your own commands into the page context-menu, modify ContextMenuHandler.OnBeforeContextMenu function, and then implement the command inside ContextMenuHandler.OnContextMenuCommand.
To setup how web app permissions are handled, modify PermissionHandler.OnShowPermissionPrompt (some flags are already inside BrowserConfig and can easily be changed).
To add new settings saved in the JSON file, simply call ConfigManager.Get* and ConfigManager.Set anywhere in your code. It will save into the file automatically.
MainForm.cs - main web browser UI and related functionalityManagers - classes that manage various types of browsing functionality, like settings, downloads and hotkeysHandlers - various handlers that we have registered with CefSharp that enable deeper integration between us and CefSharpbin - Binaries are included in the bin folder due to the complex CefSharp setup required. Don't empty this folder.bin/storage - HTML and JS required for downloads manager and custom error pages