- HTML5, CSS3, JS, HTML5 Video, WebGL 3D, WebAssembly, etc
- Tabbed browsing
- Address bar (also opens Google)
- Back, Forward, Stop, Refresh
- Developer tools
- Search bar (also highlights all instances)
- Download manager
- Custom error pages
- Custom context menu
- Easily add vendor-specific branding, buttons or hotkeys
- View online & offline webpages
Hotkeys | Function |
---|---|
Ctrl+T | Add a new tab |
Ctrl+N | Add a new window |
Ctrl+W | Close active tab |
F5 | Refresh active tab |
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) |
-
You need VC++ 2019 Runtime 32-bit and 64-bit versions
-
You will need .NET 6.
-
You need to install the version of VC++ Runtime that CEFSharp needs. Since we are using CefSharp 106, according to this we need the above versions
- See the Compilation Guide for steps to get started.
- Baby uses CefSharp 106 and is built on NET 6
- Baby supports AnyCPU as well as x86/x64 specific builds
- WebBrowser.xaml.cs - main web browser UI and related functionality
- WebBrowser.xaml - main web browser UI and related functionality
- Callbacks - various handlers that we have registered with CefSharp.
- Delegates - fast JSON serializer/deserializer
- Enumerations - Enumerations used by Baby.
- Events - events for the interface.
- Exceptions - custom exception classes.
- Serializers - custom serialization classes.
- Views - windows used in the application.
- Themes - themes used on the application controls.
- Controls - classes for the Baby user interface.
- WebPages - optional custom web page templates
bin
- Binaries are included in thebin
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
- libcef.dll (Chromium Embedded Framework Core library)
- icudtl.dat (Unicode Support data)
- chrome_elf.dll(Crash reporting library)
- snapshot_blob.bin, v8_context_snapshot.bin (V8 snapshot data)
- locales\en-US.pak, chrome_100_percent.pak, chrome_200_percent.pak, resources.pak,
- d3dcompiler_47.dll
- libEGL.dll
- libGLESv2.dll
Whilst these are technically listed as optional, the browser is unlikely to function without these files.
- CefSharp.Core.dll, CefSharp.dll
- CefSharp.Core.Runtime.dll
- CefSharp.BrowserSubprocess.exe
- CefSharp.BrowserSubProcess.Core.dll
These are required CefSharp binaries that are the common core logic binaries of CefSharp (only 1 required).
- CefSharp.WinForms.dll
- CefSharp.Wpf.dll
- CefSharp.OffScreen.dll
Bubba uses the following projects and libraries. Please consider supporting them as well (e.g., by starring their repositories):
Library | Description |
---|---|
CefSharp.WPF.Core | .NET (WPF/Windows Forms) bindings for the Chromium Embedded Framework |
Epplus | EPPlus-Excel spreadsheets for .NET |
Google.Api.CustomSearchAPI.v1 | Google APIs Client Library for working with Customsearch v1 |
LinqStatistics | Linq extensions to calculate basic statistics. |
System.Data.SqlServerCe | Unofficial package of System.Data.SqlServerCe.dll if you need it as dependency. |
Microsoft.Office.Interop.Outlook 15.0.4797.1004 | This an assembly you can use for Outlook 2013/2016/2019 COM interop, generated and signed by Microsoft. This is entirely unsupported and there is no license since it is a repackaging of Office assemblies. |
ModernWpfUI 0.9.6 | Modern styles and controls for your WPF applications. |
Newtonsoft.Json 13.0.3 | Json.NET is a popular high-performance JSON framework for .NET |
RestoreWindowPlace 2.1.0 | Save and restore the place of the WPF window |
SkiaSharp 2.88.9 | SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library. |
Syncfusion.Licensing 24.1.41 | Syncfusion licensing is a .NET library for validating the registered Syncfusion license in an application at runtime. |
System.Data.OleDb 9.0.0 | This package implements a data provider for OLE DB data sources. |
System.Data.SqlClient 4.9.0 | The legacy .NET Data Provider for SQL Server. |
MahApps.Metro | UI toolkit for WPF applications |
System.Data.SQLite.Core | The official SQLite database engine for both x86 and x64 along with the ADO.NET provider. |
System.Speech 9.0.0 | Provides APIs for speech recognition and synthesis built on the Microsoft Speech API in Windows. |
ToastNotifications.Messages.Net6 1.0.4 | Toast notifications for WPF allows you to create and display rich notifications in WPF applications. |
Syncfusion.SfSkinManager.WPF 24.1.41 | The Syncfusion WPF Skin Manageris a .NET UI library that contains the SfSkinManager class, which helps apply the built-in themes to the Syncfusion UI controls for WPF. |
Syncfusion.Shared.Base 24.1.41 | Syncfusion WinForms Shared Components |
Syncfusion.Shared.WPF 24.1.41 | Syncfusion WPF components |
Syncfusion.Themes.FluentDark.WPF 24.1.41 | The Syncfusion WPF Fluent Dark Theme for WPF contains the style resources to change the look and feel of a WPF application to be similar to the modern Windows UI style introduced in Windows 8 apps. |
Syncfusion.Tools.WPF 24.1.41 | This package contains WPF AutoComplete, WPF DockingManager, WPF Navigation Pane, WPF Hierarchy Navigator, WPF Range Slider, WPF Ribbon, WPF TabControl, WPF Wizard, and WPF Badge components for WPF application. |
Syncfusion.UI.WPF.NET 24.1.41 | Syncfusion WPF Controls is a library of 100+ WPF UI components and file formats to build modern WPF applications. |
Baby uses free code signing provided by SignPath.io and a free code signing certificate from SignPath Foundation.
The binaries and installer are built on AppVeyor directly from the GitHub repository. Build artifacts are automatically sent to SignPath.io via webhook, where they are signed after manual approval by the maintainer. The signed binaries are then uploaded to the GitHub releases page.
This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.
Baby has integrated the following services for additional functions, which can be enabled or disabled at the first start (in the welcome dialog) or at any time in the settings:
- api.github.com (Check for program updates)
- ipify.org (Retrieve the public IP address used by the client)
- ip-api.com (Retrieve network information such as geo location, ISP, DNS resolver used, etc. used by the client)
Baby is published under the MIT General Public License v3.
The licenses of the libraries used can be found here.