Chromely

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

Chromely is a .NET/.NET Core HTML5 Chromium desktop framework. It is focused on building apps based on Xilium.CefGlueCefSharp implementations of embedded Chromium (CEF) without WinForms or WPF. Chromely uses Windows and Linux native GUI API as "thin" chromium hosts. It can be extended to use WinForms or WPF.

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 Studio 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.

Options of communicating (IPC) with rendering process are via:

  1. .NET/Javascript integration (CefSharp) - more info @ Expose .NET class to JavaScript.
  2. Generic Message Routing (Xilium.CefGlue) - more info @ Generic Message Routing.
  3. Ajax HTTP/XHR (Xilium.CefGlueCefSharp) - more info @ Custom Scheme Handling.
  4. Real-time with Websocket (ws) (Xilium.CefGlue) - more info @ Real-time with Websocket.

Roadmap & Help Wanted

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

Have a quick question? Wanna chat? Connect on 

Have an app/project/tool using Chromely - please share!

Platforms

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

Platform CefGlue.Winapi CefGlue.Gtk CefSharp.Winapi
Windows(1) 32-bit net461, netstandard2.0 net461, netstandard2.0 net461
Windows(1) 64-bit net461, netstandard2.0 --- ---
Linux(2) 32-bit --- netstandard2.0 ---
Linux(2) 64-bit --- netstandard2.0 ---
MacOSX(3) 64-bit --- --- ---
Linux ARM(4) --- netstandard2.0 ---

(1)  Windows 7, Service Pack 1 and newer
 (2)  Ubuntu 16.04 and newer
       (Mono currently not working, window resizing not working)
 (3)  Work in progress...
 (4)  i.e. Raspberry Pi 3+
       (manual download of CEF builds for ARM available on http://chromely.org/cefbuilds/index.html)

For more info/documentation, please check Chromely wiki.

   

 
 

Demo Code

Get started with the demos.

Creating a Simple App (Using CefGlue with Winapi host)

For more info see - Getting Started

Notes on Upgrade to CefGlue version 70 and CefSharp version 71 (Chromely v4) - Please see.

class Program
{
static int Main(string[] args)
{
var startUrl = "https://google.com"; var config = ChromelyConfiguration
.Create()
.WithHostMode(WindowState.Normal, true)
.WithHostTitle("chromely")
.WithHostIconFile("chromely.ico")
.WithAppArgs(args)
.WithHostBounds(1000, 600)
.WithStartUrl(startUrl); using (var window = ChromelyWindow.Create(config))
{
return window.Run(args);
}
}
}

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

dotnet new -i "Chromely.CefGlue.Win.Template::*"
dotnet new chromelywin
dotnet restore
dotnet chromelycef.dll download v70 --cpu=x64 --dest="bin\Debug\netcoreapp2.1"
dotnet build
dotnet run

Chromely Demos

For more info on demos - Demos 

References

Contributing

Contributions are always welcome, via PRs, issues raised, or any other means. To become a dedicated contributor, please contact the Chromely team or raise an issue mentioning your intent.

License

Chromely is MIT licensed. For dependency licenses please see.

Credits

Thanks to JetBrains for the OSS license of Resharper Ultimate.

Improved and optimized using:

Chromely的更多相关文章

  1. 一系列令人敬畏的.NET核心库,工具,框架和软件

    内容 一般 框架,库和工具 API 应用框架 应用模板 身份验证和授权 Blockchain 博特 构建自动化 捆绑和缩小 高速缓存 CMS 代码分析和指标 压缩 编译器,管道工和语言 加密 数据库 ...

  2. NanUI | NanUI 0.7 正式发布

    2020年2月10日 NanUI 0.7版正式发布. 回顾过去的一年,浑浑噩噩.生活上.工作上太多的压力和变数让我身心疲惫,目睹亲人被病痛的摧残的痛苦,无法释怀的生死别离令我沉沦许久:公司业务的变动, ...

  3. Github上优秀的.NET Core项目

    Github上优秀的.NET Core开源项目的集合.内容包括:库.工具.框架.模板引擎.身份认证.数据库.ORM框架.图片处理.文本处理.机器学习.日志.代码分析.教程等. Github地址:htt ...

  4. 【转载】Github上优秀的.NET Core项目

    Github上优秀的.NET Core项目 Github上优秀的.NET Core开源项目的集合.内容包括:库.工具.框架.模板引擎.身份认证.数据库.ORM框架.图片处理.文本处理.机器学习.日志. ...

  5. [Asp.Net Core] Blazor Server Side 扩展用途 - 配合CEF来制作客户端浏览器软件

    前言 大家用过微信PC端吧? 这是用浏览器做的. 用过Visual Studio Code吧? 也是用浏览器做的. 听说, 暴雪客户端也包含浏览器核心?? 在客户端启动一个浏览器, 并不是什么难事了. ...

  6. Github上优秀的.NET Core开源项目的集合

    内容包括:库.工具.框架.模板引擎.身份认证.数据库.ORM框架.图片处理.文本处理.机器学习.日志.代码分析.教程等. Github地址:https://github.com/jasonhua95/ ...

随机推荐

  1. Java全排列递归算法

    Java全排列算法: 第一遍循环:将list数组index==0的元素依次与数组的每个元素交换,从而保证index==0的位置先后出现n个不同元素之一,实现对index==0位置的遍历. 第 i 遍循 ...

  2. 神经网络中的反向传播法--bp【转载】

    from: 作者:Charlotte77 出处:http://www.cnblogs.com/charlotte77/ 一文弄懂神经网络中的反向传播法——BackPropagation 最近在看深度学 ...

  3. 一、IIS搭建前端静态模板_资源加载问题

    一.模板文件说明和效果展示 二.IIS配置模板 三.解决方案 把资源文件复制到html目录内与index.htm同级,因为我iis指定站点就是该目录.

  4. python基础操作---list

    #coding:utf-8 list1 = ['physics', 'chemistry', 1997, 2000]; list2 = [1, 2, 3, 4, 5 ]; list3 = [" ...

  5. PAT Advanced 1019 General Palindromic Number (20 分)

    A number that will be the same when it is written forwards or backwards is known as a Palindromic Nu ...

  6. linux中未实现的系统调用

    afs_syscall, break, fattach, fdetach, ftime, getmsg, getpmsg, gtty, isastream, lock, madvise1, mpx, ...

  7. js 动态时间

    <script type="text/javascript"> function show_cur_times(){ //获取当前日期 var date_time = ...

  8. 过滤函数filter

    >>> def validate(usernames): if (len(usernames) > 4) and (len(usernames) < 12): retur ...

  9. Git之仓库管理

    介绍以及安装: Git 是一个开源的分布式版本控制软件,用以有效.高速的处理从很小到非常大的项目版本管理. Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发.Git ...

  10. Top 8 Diagrams for Understanding Java

    Reference: http://www.programcreek.com/2013/09/top-8-diagrams-for-understanding-java/ A diagram is s ...