Skip to content

Build .NET/.NET Core HTML5 desktop apps using cross-platform native GUI API

License

Notifications You must be signed in to change notification settings

it19862/Chromely

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chromely

Chromely is a lightweight alternative to Electron.NET, Electron for .NET/.NET Core developers.

Chromely is a .NET/.NET Core HTML5 Chromium desktop framework. It is focused on building apps using embedded Chromium (Cef) without WinForms or WPF. Chromely uses Windows and Linux native GUI API as chromium hosts. It can be extended to use WinForms or WPF. Main form of communication with Chromium rendering process is via Ajax HTTP/XHR requests using custom schemes and domains (Xilium.CefGlue, CefSharp), .NET/Javascript integration (CefSharp), Generic Message Routing (Xilium.CefGlue).

With Chromely you can build Single Page Application (SPA) HTML5 desktop apps with or without Node/npm. Building SPA apps using javascript frameworks like Angular, React, Vue or similar is easy. You can use Visual Source Code or any IDE you are familiar with as long as Chromely knows the entry html file from the compiled/bundled files. For more info please see - Chromely-Apps.

If you like Chromely, please give it a star - it helps!

Platforms

Cross-platform - Windows, Linux. Built on CefGlue, CefSharp, NET Standard 2.0, .NET Core 2.0, .NET Framework 4.61 and above.

Chromely.Core Chromely.CefGlue.Winapi Chromely.CefSharp.Winapi Chromely.Unofficial.CefGlue.NetStd

For more info/documentation, please check Chromely wiki.
Chromely + Angular
Chromely + React
Chromely + Vue

Creating a Simple App (Using CefGlue with Winapi host)

For more info see - Getting Started

class Program
{
   static int Main(string[] args)
   {
      string startUrl = "https://google.com";

      ChromelyConfiguration config = ChromelyConfiguration
                                    .Create()
                                    .WithAppArgs(args)
                                    .WithHostSize(1000, 600)
                                    .WithStartUrl(startUrl);

     var factory = WinapiHostFactory.Init();
     using (var window = factory.CreateWindow(() => new CefGlueBrowserHost(config),
           "chromely", constructionParams: new FrameWindowConstructionParams()))
      {
         window.SetSize(config.HostWidth, config.HostHeight);
         window.CenterToScreen();
         window.Show();
         return new HostEventLoop().Run(window);
     }
  }
}

Run Starter Template (Using dotnet core cli). For more info, please see - dotnet cli demo template install

dotnet new chromelywin 
dotnet restore
dotnet build
dotnet run

Chromely Demos

For more info on demos - Demos

References

Credits

Thanks to JetBrains for the OSS license of Resharper Ultimate.

Improved and optimized using:

Resharper logo

About

Build .NET/.NET Core HTML5 desktop apps using cross-platform native GUI API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 91.7%
  • HTML 6.8%
  • Other 1.5%