{"id":15690233,"url":"https://github.com/xuanchenlin/winformium","last_synced_at":"2026-03-07T11:31:45.726Z","repository":{"id":197051497,"uuid":"697345237","full_name":"XuanchenLin/WinFormium","owner":"XuanchenLin","description":"Easily buid powerful WinForm applications with HTML, CSS and JavaScript.","archived":false,"fork":false,"pushed_at":"2023-10-02T16:19:40.000Z","size":781,"stargazers_count":13,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-04T03:24:45.398Z","etag":null,"topics":["cef","cefglue","chromium-embedded-framework","nanui","windows-forms","winform","winform-ui","winformium","winforms","wpf-ui"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/XuanchenLin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-09-27T14:38:48.000Z","updated_at":"2025-03-21T03:27:34.000Z","dependencies_parsed_at":"2023-12-09T11:44:54.453Z","dependency_job_id":null,"html_url":"https://github.com/XuanchenLin/WinFormium","commit_stats":{"total_commits":15,"total_committers":1,"mean_commits":15.0,"dds":0.0,"last_synced_commit":"c67c3d9103df92d52efb6b96755d0d70454ad7cc"},"previous_names":["xuanchenlin/winformium"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XuanchenLin%2FWinFormium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XuanchenLin%2FWinFormium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XuanchenLin%2FWinFormium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XuanchenLin%2FWinFormium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/XuanchenLin","download_url":"https://codeload.github.com/XuanchenLin/WinFormium/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252973620,"owners_count":21834105,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cef","cefglue","chromium-embedded-framework","nanui","windows-forms","winform","winform-ui","winformium","winforms","wpf-ui"],"created_at":"2024-10-03T18:08:22.642Z","updated_at":"2026-03-07T11:31:45.661Z","avatar_url":"https://github.com/XuanchenLin.png","language":null,"funding_links":["https://paypal.me/mrjson?country.x=C2\u0026locale.x=zh_XC"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"./artworks/WinFormiumLogo.png\" width=\"144\" /\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003eThe WinFormium Project\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\u003cstrong\u003eEasily buid powerful WinForm applications with HTML, CSS and JavaScript.\u003c/strong\u003e\u003c/p\u003e\n\n# WinFormium\n\n![GitHub](https://img.shields.io/github/license/XuanchenLin/WinFormium)\n![Nuget](https://img.shields.io/nuget/v/WinFormium)\n![Nuget](https://img.shields.io/nuget/dt/WinFormium)\n\nEnglish | [简体中文](README.zh-Hans.md)\n\n## ⭐ About\n\nWinFormium is a open source framework on .NET platform for creating user interface of WinForm Applicaitons using HTML5, CSS3, and JavaScript. It is based on the [Xilium.CefGlue](https://bitbucket.org/xilium/xilium.cefglue/wiki/Home) project, which is a .NET wrapper around the [Chromium Embedded Framework](https://bitbucket.org/chromiumembedded/cef).\n\nIf you are looking for a framework for creating a WinForm application with a modern user interface, WinFormium is a good choice. you can use HTML, CSS, and JavaScript to create a user interface, and use C# to write the business logic of the application.\n\n**Please give WinFormium project a star⭐ if you like it.**\n\nIf this project helps, please consider funding it.\n\n[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/mrjson?country.x=C2\u0026locale.x=zh_XC)\n\n## 🖥️ Requirements\n\n**For Development**\n\n- .NET Framework 4.6.2 or higher / .NET 6.0 or higher\n- Visual Studio 2019 or higher (VS2022 is recommended)\n\n**For Deployment**\n\n- Microsoft Windows 7 Service Pack 1 or higher\n- .Net Framework 4.6.2 or higher\n- .NET 6.0 for Windows 7 and higher.\n- .NET 7.0/8.0 for Windows 10 and higher.\n\nThis is a **Windows Only** framework, it can not run on Linux or Mac OS.\n\nThe minimum supported Windows is Windows 7 Service Pack 1, and some features (such as DirectComposition Offscreen Rendering) are not supported on Windows 7.\n\n## 🧰 Getting Started\n\n### Create a simple Application\n\n**1. Create a WinForm Application by default template.**\n\n**2. Install WinFormium NuGet Package**\n\nOpen the NuGet Package Manager to install or use NuGet Package Manager Console, and run the following command to install WinFormium nuget package:\n\n```powershell\nPM\u003e Install-Package WinFormium\n```\n\nInstall the dependencies of Chromium Embedded Framework that WinFormium depends on:\n\n```powershell\nPM\u003e Install-Package WinFormium.Runtime\n```\n\n**3. A basic WinFormium application requires the following code:**\n\nModify the code in the **Program.cs** file as follows:\n\n```csharp\nusing WinFormium;\n\nclass Program\n{\n    [STAThread]\n    static void Main(string[] args)\n    {\n        var builder = WinFormiumApp.CreateBuilder();\n\n        builder.UseWinFormiumApp\u003cMyApp\u003e();\n\n        var app = builder.Build();\n\n        app.Run();\n    }\n}\n```\n\nCreate a class implements **WinFormiumStartup** for configuring the application:\n\n```csharp\nusing WinFormium;\n\nclass MyAPP : WinFormiumStartup\n{\n    protected override MainWindowCreationAction? UseMainWindow(MainWindowOptions opts)\n    {\n        // Configure the main window of this application\n        return opts.UseMainFormium\u003cMyWindow\u003e();\n    }\n\n    protected override void WinFormiumMain(string[] args)\n    {\n        // The codes in Main function should be here, this function only runs in Main process. So it can prevent the codes in Main process running in sub-processes.\n        ApplicationConfiguration.Initialize();\n    }\n\n    protected override void ConfigurationChromiumEmbedded(ChromiumEnvironmentBuiler cef)\n    {\n        // Configure the Chromium Embedded Framework here\n    }\n\n    protected override void ConfigureServices(IServiceCollection services)\n    {\n        // Configure the services of this application here\n    }\n}\n```\n\nCreate a class implements **Formium** for configuring the main window of the application:\n\n```csharp\nusing WinFormium;\nusing WinFormium.Forms;\n\nclass MyWindow : Formium\n{\n    public MyWindow()\n    {\n        Url = \"https://www.google.com\";\n    }\n\n    protected override FormStyle ConfigureWindowStyle(WindowStyleBuilder builder)\n    {\n        // Configure the style of the window here or leave it blank to use the default style\n\n        var style = builder.UseSystemForm();\n\n        style.TitleBar = false;\n\n        style.DefaultAppTitle = \"My first WinFomrim app\";\n\n        return style;\n    }\n}\n```\n\n**4. Build and run**\n\n## 📖 Documentation\n\nFor more info please see - [Documentation](docs/en/Documentation.md) or [Wiki](https://github.com/XuanchenLin/WinFormium/wiki)\n\n## 🤖 Demos\n\n- [Minimal WinFormium App](./examples/MinimalWinFormiumApp) - Introduction to the basic usage of WinFormium.\n\n## 🔗 Third-Party References \u0026 Tools\n\n- CEF - [https://bitbucket.org/chromiumembedded/cef]()\n- Xilium.CefGlue - [https://gitlab.com/xiliumhq/chromiumembedded/cefglue/]()\n- Vanara.Library - [https://github.com/dahall/Vanara/]()\n- Vortice.Windows - [https://github.com/amerkoleci/Vortice.Windows]()\n- SkiaSharp - [https://github.com/mono/SkiaSharp]()\n- React - [https://github.com/facebook/react]()\n- React-Router - [https://github.com/remix-run/react-router]()\n- Vite - [https://github.com/vitejs/vite]()\n\n## 🏆 Inspirations\n\nI was inspired by the following songs and albums when creating this version of WinFormium.\n\n- **Strandels** - Chance Of Rain\n- **One Direction** - What a Feeling (Made In The A.M.)\n- **Thomas Rhett** - VHS (Center Point Road)\n- **Sammy Kershaw** - She Don't Know She's Beautiful (Haunted Heart)\n- **Chrissy Steele** - Two Bodies (Magnet To Steele)\n- **Halestorm** - I Like It Heavy (Into the Wild Life)\n- **Joan Jett \u0026 The Blackhearts** - I Hate Myself for Loving You (Up Your Alley)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuanchenlin%2Fwinformium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxuanchenlin%2Fwinformium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuanchenlin%2Fwinformium/lists"}